WO2021060227A1 - 高さ補正システム - Google Patents

高さ補正システム Download PDF

Info

Publication number
WO2021060227A1
WO2021060227A1 PCT/JP2020/035660 JP2020035660W WO2021060227A1 WO 2021060227 A1 WO2021060227 A1 WO 2021060227A1 JP 2020035660 W JP2020035660 W JP 2020035660W WO 2021060227 A1 WO2021060227 A1 WO 2021060227A1
Authority
WO
WIPO (PCT)
Prior art keywords
height
workbench
positions
robot arm
reference position
Prior art date
Application number
PCT/JP2020/035660
Other languages
English (en)
French (fr)
Inventor
匡隆 池尻
Original Assignee
日本電産株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電産株式会社 filed Critical 日本電産株式会社
Priority to JP2021548903A priority Critical patent/JPWO2021060227A1/ja
Priority to CN202080067199.3A priority patent/CN114450130A/zh
Publication of WO2021060227A1 publication Critical patent/WO2021060227A1/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/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25HWORKSHOP EQUIPMENT, e.g. FOR MARKING-OUT WORK; STORAGE MEANS FOR WORKSHOPS
    • B25H1/00Work benches; Portable stands or supports for positioning portable tools or work to be operated on thereby
    • B25H1/14Work benches; Portable stands or supports for positioning portable tools or work to be operated on thereby with provision for adjusting the bench top
    • B25H1/18Work benches; Portable stands or supports for positioning portable tools or work to be operated on thereby with provision for adjusting the bench top in inclination
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • 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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion

Definitions

  • the present disclosure relates to a height correction system.
  • a robot system that transports parts by using an articulated robot arm (hereinafter abbreviated as "robot arm”) arranged on a self-propellable trolley.
  • robot arm At the tip of the robot arm, an "end effector” such as a grip portion for gripping a part is provided.
  • the robot arm uses the end effector to grasp the part, and the robot arm expands and contracts to move the part to a specific position on the top plate of the workbench, and other Assemble to parts.
  • Japanese Unexamined Patent Publication No. 7-266268 discloses a hand positioning device capable of performing positioning including the height direction and inclination of the robot arm (hand).
  • the hand is mounted on a mobile robot that runs on the floor.
  • the hand positioning device takes an image of a mark (LED) provided on the table surface with a camera at the tip of the arm, and corrects the height position of the arm based on the image.
  • LED a mark
  • the floor on which the workbench is installed and / or the floor on which the trolley runs may not be completely horizontal. ..
  • the robot arm even if the robot arm should have been moved horizontally, the robot arm actually moves away from or approaches the top plate of the workbench.
  • the robot arm is required to correct the position in the height direction and suppress the misalignment within a predetermined accuracy.
  • the height correction system of the present disclosure is a workbench on a first floor, a trolley on a second floor, and an articulated robot arm on the trolley.
  • a storage device that stores a correction table prepared in advance, and the correction table, the inclination of the first floor surface and / or the second It has a controller that corrects the deviation in height from the upper surface of the work table to the end effector due to the inclination of the floor surface of the work table and operates the articulated robot arm with respect to the work on the upper surface of the work table.
  • the correction table is such that the workbench is installed on the first reference floor, the trolley is installed on the second reference floor, and the reference operating parameters are given.
  • the articulated robot arm When the articulated robot arm is operated, the height from each of a plurality of positions in at least a part of the upper surface of the work table to the end effector directly above each position is associated with each position. And stores the reference height from at least three predetermined reference positions to the end effector directly above each reference position on the workbench upper surface, and the controller stores the controller from the workbench upper surface.
  • the at least three reference positions are detected, the articulated robot arm is operated with the reference operation parameters, the height from each of the detected reference positions to the end effector is measured, and the height is measured for each reference position.
  • FIG. 1 is an external view of the robot system 1.
  • FIG. 2 is a hardware block diagram of the robot system 1, mainly the control device 200.
  • FIG. 3 is a diagram showing a robot system 1 installed in an environment for generating the correction table 230.
  • FIG. 4 is a diagram showing a specific example of the generated correction table 230.
  • FIG. 5 is a diagram showing an example of a table in which the measurement results of the distortion in the height direction of the robot arm A when the robot arm A is installed on a horizontal plane are stored.
  • FIG. 6 is a diagram showing an example of a table in which the measurement results of the inclination of the floor surface FAref on which the carriage 300 travels are stored.
  • FIG. 1 is an external view of the robot system 1.
  • FIG. 2 is a hardware block diagram of the robot system 1, mainly the control device 200.
  • FIG. 3 is a diagram showing a robot system 1 installed in an environment for generating the correction table 230.
  • FIG. 4 is a diagram showing a specific
  • FIG. 7 is a diagram showing an example of a table in which the measurement results of the inclination of the floor surface FUref on which the workbench U is installed are stored.
  • FIG. 8 is a diagram showing a robot system 1 installed in a specific environment.
  • FIG. 9 is a perspective view of the robot system 1 installed in the operating environment.
  • FIG. 10 is a diagram showing the inclination of the floor surface FA1 on which the carriage 300 travels for each position.
  • FIG. 11 is a diagram showing the inclination of the floor surface FU1 on which the workbench U is installed for each position.
  • FIG. 12 is a diagram showing three positions P1, P2 and P3 on the top plate Utop of the workbench U.
  • FIG. 13 is a diagram showing an example of the measurement result of the height of the end effector 100 at the three reference positions P1, P2 and P3.
  • FIG. 14 is a diagram showing an example of the difference result.
  • FIG. 15 is a diagram for explaining a plane approximation.
  • FIG. 16 is a diagram showing an example of the difference in height to the end effector at each position constituting the grid point, which is obtained by plane approximation.
  • FIG. 17 is a flowchart showing a processing procedure of the controller 210.
  • FIG. 18 is a diagram showing a robot system 2 that acquires characteristic data of the master workbench MU.
  • FIG. 19 is a diagram showing an example of a table in which the measurement results of the distortion of the master workbench MU are stored.
  • FIG. 20 is a diagram showing a robot system 3 in which a new arm NA and a master workbench MU are combined.
  • FIG. 21 is a diagram showing an example of a table in which the measurement results of the distortion of the new arm NA are stored.
  • FIG. 22 is a diagram showing a robot system 4 in which a master robot arm MA and a new workbench NU are combined.
  • FIG. 23 is a diagram showing an example of a table in which the measurement results of the distortion of the new workbench NU are stored.
  • FIG. 24 is a diagram showing a 2-axis automatic goniometer stage 400 and a microcomputer 500 provided on the workbench U.
  • FIG. 25A is an external view of the 2-axis automatic goniometer stage 400.
  • FIG. 25B is an external view of the 2-axis automatic goniometer stage 400.
  • FIG. 26 is a flowchart showing a processing procedure of the microcomputer 500 that controls the 2-axis automatic goniometer stage 400.
  • FIG. 1 is an external view of the robot system 1.
  • the robot system 1 includes an articulated robot arm A (hereinafter abbreviated as "robot arm A") to which an end effector 100 is attached to a tip end portion, a control device 200, a trolley 300, and a work table U.
  • robot arm A articulated robot arm A
  • the robot arm A has joints 104 and 106 in addition to the lumbar portion 102, and changes the posture of the robot arm A by rotating or expanding and contracting the joints.
  • the end effector 100 is a device that is attached to the tip of the robot arm A so that the robot arm A can perform work.
  • Typical examples of end effectors include grips, nut turns, weld guns, and spray guns.
  • the end effector can be appropriately replaced and used by the user according to the application of the robot arm A.
  • the control device 200 controls the operation of the robot arm A.
  • the waist 102 of the robot arm A is fixed to the upper part of the control device 200.
  • the control device 200 and the robot arm A are connected by a power cable and a control cable (not shown).
  • the dolly 300 is a device on which the robot arm A and the control device 200 are mounted and moved.
  • the trolley 300 is an automatic guided vehicle that has wheels for generating traction for movement and automatically travels.
  • the automatic driving includes traveling based on a command of a computer operation management system (not shown) to which the automatic guided vehicle is connected by communication, and autonomous driving by a control device (not shown) provided in the automatic guided vehicle.
  • the control device 200 and the carriage 300 are connected by a control cable (not shown), and the carriage 300 can also travel based on a command from the control device 200.
  • Autonomous traveling includes not only traveling of an automated guided vehicle toward a destination along a predetermined route, but also traveling of following a tracking target.
  • the automatic guided vehicle may temporarily run manually based on the instructions of the operator.
  • Autonomous driving can generally include both “guided” driving and “guideless” driving.
  • the “guide type” is a method in which derivatives are installed continuously or intermittently, and an automatic guided vehicle is guided by using the derivatives.
  • the “guideless type” is a method of guiding without installing a derivative.
  • the carriage 300 according to the embodiment of the present disclosure is provided with a self-position estimation device and can travel in a guideless manner.
  • the “self-position estimation device” is a device that estimates the self-position on the environmental map based on the sensor data acquired by an external sensor such as a laser range finder.
  • the “outside world sensor” is a sensor that senses the external state of a moving body.
  • External world sensors include, for example, a laser range finder (also referred to as a range finder), a camera (or image sensor), a LIDAR (Light Detection and Langing), a millimeter-wave radar, and a magnetic sensor.
  • the dolly 300 can simultaneously estimate its own position and create an environmental map by using the so-called SLAM (Simultaneous Localization and Mapping) technology.
  • SLAM Simultaneous Localization and Mapping
  • the workbench U has a top plate Utop.
  • the top plate Utop may be referred to as "the upper surface of the workbench U".
  • the robot arm A works on the top plate Utop.
  • the robot arm A assembles a work (part) gripped by the end effector 100 to a part placed on the top plate Utop.
  • the robot arm A places the parts gripped by the end effector 100 at a predetermined position on the top plate Utop.
  • the trolley 300 runs on the floor surface FA, and the workbench U is installed on the floor surface FU.
  • the workbench U will be described as being fixedly installed on the floor surface FU, but the workbench U also has wheels for generating a driving force for movement and may automatically travel. ..
  • FIG. 2 is a hardware block diagram of the robot system 1, mainly the control device 200.
  • the control device 200 includes a controller 210 and a storage device 220.
  • the controller 210 is a so-called computer, and includes, for example, a CPU (buffer, register) (not shown), a communication terminal for exchanging data between the robot arm A and the carriage 300, respectively.
  • the storage device 220 is, for example, a RAM.
  • the storage device 220 stores the correction table 230.
  • the correction table 230 is a table in which the position and the height are associated with each other, which is measured in advance by operating the robot arm A under a predetermined environment. Details of the correction table generation method will be described later.
  • the controller 210 of the control device 200 uses the data acquired under the installed environment and the correction table 230.
  • the deviation of the robot arm A in the height direction can be corrected by the procedure described later.
  • Each of the robot arm A and the trolley 300 may have a known hardware configuration of a robot arm and an automatic guided vehicle (so-called AGV). With such a hardware configuration, each of the robot arm A and the carriage 300 can operate according to a command from the controller 210 of the control device 200.
  • AGV automatic guided vehicle
  • FIG. 3 shows a robot system 1 installed in an environment for generating the correction table 230.
  • the robot system 1 shown in FIG. 3 is installed in an inspection factory of a manufacturer of the robot system 1.
  • the robot system 1 may be temporarily installed in a delivery destination factory or the like and then moved to a different position in the factory.
  • the floor surface FUref on which the workbench U is installed and the floor surface FAref on which the trolley 300 travels are known in advance. Therefore, the inclination of the floor surface FUref and the inclination of the floor surface FAref can be acquired in advance, and the correction table 230 can be generated by using the acquired inclination.
  • the floor surface FUref on which the workbench U is installed may be referred to as a "first reference floor surface”
  • the floor surface FAref on which the trolley 300 travels may be referred to as a "second reference floor surface”. ..
  • the X-axis and the Y-axis are taken and correspond to the horizontal axis and the vertical axis of the correction table 230 described below.
  • FIG. 4 shows a specific example of the generated correction table 230.
  • the right direction of the correction table 230 corresponds to the + X direction in FIG. 3, and the downward direction corresponds to the + Y direction in FIG.
  • a plurality of positions specified by the X coordinate and the Y coordinate are set in a grid point shape on the top plate Utop of the workbench U.
  • the robot arm A is operated so that the end effector 100 comes to a height of 150 mm directly above each grid point, and the actual height at that time is measured.
  • "Directly above” is not necessarily perpendicular to the top plate Utop of the workbench U. It means upward from each grid point in the vertical direction.
  • the correction table 230 is a table in which the measured heights are described at the coordinate positions indicating the grid points. That is, the correction table 230 is a table in which the position on the top plate Utop when the robot arm A is actually operated in relation to the workbench U and the height of the end effector 100 at that time are stored in association with each other. Is. For example, at the position of the coordinates (-10, -10), the height should have been 150 mm, but in this robot system 1, it is 149.6196 mm. The coordinate position and the numerical value of 150 mm are examples. Depending on the size of the top plate Utop of the workbench U and the working position required for the end effector 100, the method of taking coordinates and the height can be appropriately changed.
  • the correction table 230 reflects various factors that affect the operating accuracy of the robot system 1 in the height direction. Specifically, the correction table 230 is provided with (1) variation in accuracy of the robot arm A in the height direction, (2) inclination of the floor surface FAref on which the trolley 300 travels, and (3) workbench U. This is the inclination of the floor surface FUref.
  • the variation in the accuracy of the robot arm A in the height direction may further include the inclination when the waist portion 102 of the robot arm A is fixed to the control device 200 and the variation in the operation accuracy of each joint of the robot arm A.
  • FIG. 5 shows an example of a table in which the measurement results of the distortion in the height direction of the robot arm A when the robot arm A is installed on a horizontal plane are stored.
  • the height of the end effector 100 from the top plate Utop is measured in a state where both the floor surface on which the workbench U is installed and the floor surface on which the trolley 300 travels are aligned with the horizontal plane.
  • a method using a laser ranging device (not shown) attached in the vicinity of the end effector 100 can be considered.
  • the controller 210 sequentially moves the end effector 100 to a position 150 mm above, for example, coordinates (5 ⁇ m, 5 ⁇ n) (m: -an integer from -2 to 2, n: -2 to an integer).
  • the laser ranging device measures the height from the end effector 100 corresponding to each position to the top plate Utop when the robot arm A is operated to move to a height of 150 mm from the top plate Utop. To do.
  • the height measurement result obtained in this way is not affected by the inclination of the floor surface and reflects only the distortion of the robot arm A in the height direction.
  • FIG. 6 shows an example of a table in which the measurement results of the inclination of the floor surface FAref on which the carriage 300 travels are stored.
  • FIG. 7 shows an example of a table in which the measurement results of the inclination of the floor surface FUref on which the workbench U is installed are stored. These represent the amount of deviation in the height direction from the horizontal plane at the position (X, Y). If it is higher than the horizontal plane, a positive value is given, and if it is lower than the horizontal plane, a negative value is given.
  • the top plate Utop of the workbench U is a flat surface having negligible irregularities.
  • the table for measuring the unevenness of the top plate Utop for each position is further considered. Then, the value V (X, Y) of the correction table 230 may be generated.
  • the correction table 230 can be prepared in advance.
  • the height of each coordinate constituting the correction table 230 may be referred to as a "reference height" in the coordinates.
  • at least three coordinates among the plurality of coordinates may be referred to as "reference positions".
  • the coordinates of the reference position are, for example, (-10, -10), (-10, 10) and (10, 10), and the position of the end portion of the top plate Utop is adopted for each of them.
  • the height corresponding to the reference position is associated. The "reference height” and "reference position” will be described later.
  • predetermined data is acquired in advance.
  • FIG. 8 shows a robot system 1 installed in a specific environment.
  • FIG. 9 is a perspective view of the robot system 1 installed in the operating environment.
  • the chain line shown in FIG. 8 indicates a horizontal plane.
  • the floor surface FA1 on which the trolley 300 travels and the floor surface FU1 on which the workbench U is installed are tilted. Described. That is, the floor surface FA1 is different from the floor surface FA (FIG. 1), and the floor surface FU1 is also different from the floor surface FU (FIG. 1).
  • the inclination of either the floor surface FA1 or the floor surface FU1 may be different from the example of FIG.
  • the inclination of the floor surface FA1 on which the trolley 300 travels and the inclination of the floor surface FU1 on which the workbench U is installed can be measured.
  • the installer independently obtains the inclination of the floor surface FA1 and the inclination of the floor surface FU1, and stores the data in the storage device 220 of the control device 200.
  • FIG. 10 shows the inclination of the floor surface FA1 on which the trolley 300 travels for each position
  • FIG. 11 shows the inclination of the floor surface FU1 on which the workbench U is installed for each position.
  • the floor surface FA1 on which the dolly 300 travels is tilted so as to be higher toward the front (in the + Y direction).
  • the inclination of the floor surface FU1 on which the workbench U is installed is inclined so as to be higher toward the right hand (in the + X direction).
  • the height of the robot arm A is measured under the introduced environment.
  • the correction table 230 was generated, the height was measured for each grid point-like position (FIG. 5). However, here it is sufficient to measure the height at at least three positions.
  • An example of automatic operation by the control device 200 will be described below.
  • FIG. 12 shows three positions P1, P2 and P3 on the top plate Utop of the workbench U.
  • the three positions P1, P2 and P3 referred to here are the same as the reference positions to which the heights are associated in the above-mentioned correction table 230. Therefore, they are also referred to as reference positions P1, P2 and P3 below.
  • the coordinates of the reference positions P1, P2 and P3 are (-10, -10), (-10, 10) and (10, 10).
  • the controller 210 of the control device 200 detects the above-mentioned three reference positions from the top plate Utop.
  • the controller 210 takes an image of the top plate Utop with an image pickup device (not shown), and determines three corners (ends) of the top plate Utop recognized from the acquired image as reference positions P1, P2, and P3. do it.
  • the controller 210 operates the articulated robot arm to measure the height from each detected reference position to the end effector.
  • the controller 210 can use a laser ranging device (not shown) as in the case of generating the table shown in FIG.
  • FIG. 13 shows an example of the measurement result of the height of the end effector 100 at the three reference positions P1, P2 and P3.
  • the controller 210 corrects the height deviation based on the height measured for each reference position and the deviation amount of the reference height at each reference position stored in the correction table 230.
  • the controller 210 corrects the height deviation based on the height measured for each reference position and the deviation amount of the reference height at each reference position stored in the correction table 230.
  • the controller 210 holds a "reference operation parameter" in advance.
  • the controller 210 specifies the rotation direction and the size of the rotation angle of the motor of the waist 102, and the rotation direction and the size of the rotation angle of the motor provided at each of the plurality of joints, and transmits the control amount to the robot arm A. ..
  • the robot arm A rotates each motor in a specified rotation direction by a specified angle based on the received control amount.
  • the control amount that determines the posture of the robot arm A in order to move the end effector 100 to such a desired three-dimensional coordinate position is the “reference operation parameter”.
  • it can be considered that individual "reference operation parameters" are prepared in advance for positioning 150 mm above each position of the grid points on the top plate Utop.
  • the end effector 100 should be able to be moved to a desired three-dimensional coordinate position if it operates with the reference operation parameter, but in the situation where the position in the height direction shifts due to the above-mentioned various factors, the original height It is necessary to correct the "reference operation parameter" so that By correcting the "reference operation parameter", the top plate is caused by the inclination of the floor surface FA1 on which the trolley 300 travels and the inclination of the floor surface FU1 on which the workbench U is installed at each position of the top plate Utop. The height deviation from the Utop to the end effector 100 can be corrected.
  • the controller 210 calculates the difference between the acquired measurement result and the value V in the correction table 230 with respect to the three reference positions P1, P2 and P3.
  • FIG. 14 shows an example of the difference result. It is understood that there is no error at the reference positions P1 (-10, -10) and P3 (10, 10), but an error of 0.4 mm occurs at the reference position P2 (-10, 10).
  • the inventor of the present application approximated the inclination of the floor surface FAref and the height deviation due to the inclination of the floor surface FUref in a plane. ..
  • FIG. 15 is a diagram for explaining a plane approximation.
  • three points indicating the three-dimensional position can be obtained. That is, the set of the value V of the correction table 230 at the reference position P1 and the reference position P1, the set of the value V of the correction table 230 at the reference position P2 and the reference position P2, and the correction table 230 at the reference position P3 and the reference position P3.
  • Three three-dimensional positions can be obtained from the set of values V.
  • the virtual plane stretched by these three points is called "plane Kref".
  • the plane Kref and the plane Km are the points at the coordinates above the reference position P1 (-10, -10, 149.6196) and the coordinates above the reference position P3 (10, 10, We share the point of 149.948). That is, the plane Kref and the plane Km intersect at a straight line L passing through these two points. And it can be said that an error of 0.4 mm occurs above the reference position P2.
  • the inventor of the present application sets the height corresponding to the positions of N grid points other than the reference position among the positions of the plurality of grid points set on the top plate Utop in the environment in which the robot system 1 is introduced. It was decided to obtain the height up to the plane Km. That is, the controller 210 sets the height at the position where the vertical line passing through each of the N positions constituting the grid points intersects with the virtual plane Km, and the height to the end effector at each of the N positions. Approximate as.
  • FIG. 16 shows an example of the difference in height to the end effector at each position constituting the grid point, which is obtained by plane approximation.
  • the controller 210 corrects the reference operation parameters at each of the three reference positions and the N positions so that the height at each of the approximate positions approaches the originally required height (150 mm in this embodiment). ..
  • the height from the top plate Utop to the end effector 100 due to the inclination of the floor surface FA1 on which the trolley 300 travels and the inclination of the floor surface FU1 on which the workbench U is installed. It is possible to correct the deviation.
  • the controller 210 is made to make the deviation amount (difference) between the height approximated for each of the above N positions and the height at each of the N positions stored in the correction table 230 smaller.
  • the reference operating parameters for each of the N positions may be corrected.
  • FIG. 17 is a flowchart showing a processing procedure of the controller 210.
  • step S10 the controller 210 detects each reference position from the top plate Utop (upper surface) of the workbench U.
  • step S12 the controller 210 operates the robot arm with the reference operation parameter to measure the height from each detected reference position to the end effector.
  • step S14 the controller 210 corrects the reference operation parameter based on the height measured for each reference position and the deviation amount of the reference height at each reference position stored in the correction table. Thereby, for each position of the upper surface of the workbench, it is possible to correct the deviation of the height from the upper surface of the workbench to the end effector due to the inclination of the floor surface FA and / or the inclination of the floor surface FU.
  • the controller 210 detects the three reference positions and measure the height, and other methods may be used. For example, if the accuracy of movement in the horizontal direction can be sufficiently secured, the positions of the three reference positions in the horizontal direction can be taught, and if the robot arm A can be stopped above the reference position, the controller 210 is 3. There is no need to detect one reference position. Further, the positions (heights) of the end effectors 100 above the three reference positions may be artificially measured, and the measurement results may be transmitted and stored in the storage device 220.
  • the robot arm is the same but another workbench is combined, or the workbench is the same but another robot arm is newly combined.
  • the correction processing assuming the case will be described.
  • the terms "master robot arm” and “master workbench” are introduced.
  • Master robot arm” and “master workbench” mean a specific robot arm and workbench that serves as a reference for the combination.
  • the master robot arm is designated by the reference code "MA”
  • the master workbench is designated by the reference code "MU”.
  • An example of the combination of the master robot arm MA and the master workbench MU is the robot arm A and the workbench U in FIGS. 1 to 3.
  • the hardware configurations of the master robot arm MA and the master workbench MU are the same as the hardware configurations of the robot arm A and the workbench U.
  • the same reference numerals will be added as appropriate for description.
  • characteristic data showing characteristics unique to each of the master robot arm MA and the master workbench MU is acquired.
  • the method of acquiring the characteristic data of the master robot arm MA is the same as the method of acquiring the table shown in FIG. That is, the distortion in the height direction of the master robot arm A when the master robot arm A is installed on a horizontal plane is the characteristic data of the master robot arm MA.
  • the method of acquiring the characteristic data of the workbench MU is as follows.
  • FIG. 18 shows a robot system 2 that acquires characteristic data of the master workbench MU.
  • the floor surface FU and FA are horizontal planes.
  • the controller 210 controls the master robot arm MA so that the end effector 100 is located at a height of 150 mm above the coordinates (-10, -10) of the top plate Utop, for example. Then, while maintaining the posture as it is, the controller 210 repeatedly executes the operation of moving the carriage 300 in parallel in the X direction by a fixed pitch (for example, +5) to stop, and moving and stopping. Each time it stops, the laser ranging device measures the height from the top plate Utop to the end effector 100. As a result, the measurement results of the height at each coordinate position of the coordinates (-10, -10), (-5, -10), (0, -10), (5, -10) and (10, -10). Is obtained.
  • the position is shifted by +5 in the Y direction, and the coordinates (-10, -5), (-5, -5), ..., (10, -5) of the top plate Utop are moved.
  • the same operation is continued until the measurement result of the height at the position of the coordinates (10, 10) is acquired.
  • FIG. 19 shows an example of a table in which the measurement results of the distortion of the master workbench MU are stored.
  • FIG. 20 shows a robot system 3 in which a new arm NA and a master workbench MU are combined.
  • the control device 200 that controls the new arm NA acquires the measurement result of the distortion of the new arm NA.
  • the measuring method is the same as the measuring method of the distortion in the height direction using the robot arm A described in connection with FIG.
  • the new arm NA is installed at the position of the master robot arm MA when the distortion of the master robot arm MA is measured.
  • the robot arm A and the workbench U in FIGS. 1 to 3 are given as examples of the combination of the master robot arm MA and the master workbench MU.
  • the new arm NA is installed at the position of the robot arm A shown in FIG.
  • the control device 200 and the trolley 300 on which the new arm NA is mounted need not be completely the same as the control device 200 and the trolley 300 on which the robot arm A is mounted in FIG.
  • FIG. 21 shows an example of a table in which the measurement results of the distortion of the new arm NA are stored.
  • the distortion measurement conditions are the same as those for measuring the distortion of the master robot arm MA shown in FIG. Therefore, the measurement result shown in FIG. 21 is the characteristic data of the new arm NA.
  • the value of the table at the position (X, Y) is expressed as "V1 NA (X, Y)".
  • V (X, Y) V1 (X, Y) + V2 (X, Y) -V3 (X, Y)
  • Vrev (X, Y) The corrected correction table value Vrev (X, Y) can be obtained in this way.
  • V2 (X, Y) and V3 (X, Y) are the value of the table storing the measurement result of the inclination of the floor surface on which the trolley 300 travels, and the floor surface on which the master workbench MU is installed, respectively. Shows the values in the table that stores the measurement results of the slope of. It needs to be measured according to the environment in which the new arm NA and master workbench MU are installed.
  • the method of correcting the height of the end effector 100 using the modified correction table is as described above. That is, if the above-mentioned "robot arm A” is read as "new arm NA", the height of the end effector 100 can be corrected even when the new arm NA or the master workbench MU is installed on a floor surface other than the horizontal plane. Can be done.
  • FIG. 22 shows a robot system 4 in which a master robot arm MA and a new workbench NU are combined.
  • the control device 200 acquires the measurement result of the distortion of the new workbench NU.
  • the measuring method is the same as the method for measuring the distortion in the height direction of the master workbench MU described in connection with FIGS. 18 and 19.
  • the new workbench NU is installed at the position of the master workbench MU when the distortion of the master workbench MU is measured.
  • the master workbench MU is installed at the position of the master workbench MU shown in FIG.
  • FIG. 23 shows an example of a table in which the measurement results of the distortion of the new workbench NU are stored.
  • the controller 210 calculates the difference between the value of the table and the value of the table storing the measurement result of the distortion of the master workbench MU shown in FIG. 19 for each position.
  • the difference table in which the obtained differences are arranged for each position is the characteristic data of the new workbench NU based on the characteristic data of the master workbench MU.
  • the value of the difference table at the position (X, Y) is expressed as "V diff (X, Y)".
  • the table shown in FIG. 5 is characteristic data of the master robot arm MA when the master workbench MU and the master robot arm MA are installed on a horizontal plane.
  • a new workbench NU is adopted instead of the master workbench MU, the above-mentioned characteristic data of the new workbench NU is reflected in the measurement result of the distortion in the height direction of the master robot arm MA.
  • characteristic data of the master robot arm MA when the new workbench NU and the master robot arm MA are installed on a horizontal plane can be obtained.
  • Vrev (X, Y) V1 (X, Y) + V diff (X, Y) + V2 (X, Y) -V3 (X, Y)
  • V2 (X, Y) and V3 (X, Y) are the value of the table storing the measurement result of the inclination of the floor surface on which the trolley 300 travels, and the floor surface on which the new workbench NU is installed, respectively. Shows the values in the table that stores the measurement results of the slope of. It needs to be measured according to the environment in which the master robot arm MA and the new workbench NU are installed.
  • the height deviation from the upper surface (top plate) of the workbench to the end effector has been corrected by correcting the reference operation parameter of the robot arm.
  • a workbench having a mechanism for adjusting the inclination of the top plate tilt adjustment mechanism
  • tilt adjustment mechanism adjusts the inclination of the top plate.
  • a 2-axis automatic goniometer stage is adopted as the tilt adjusting mechanism.
  • FIG. 24 shows a 2-axis automatic goniometer stage 400 and a microcomputer 500 provided on the workbench U.
  • the microcomputer 500 controls a 2-axis automatic goniometer stage 400 (hereinafter abbreviated as “goniostage 400”) to adjust the inclination of the top plate Utop of the workbench U.
  • goniostage 400 a 2-axis automatic goniometer stage 400
  • the 2-axis automatic goniometer stage 400 which is a tilt adjusting mechanism, will be described.
  • the 2-axis automatic goniometer stage is adopted, the height between the end effector and the top plate can be adjusted to be constant without correcting the reference operation parameter of the robot arm.
  • the absolute height in the Z-axis direction perpendicular to the top plate is adjusted by the operation of the robot arm.
  • JP-A-2006-090510 a well-known biaxial automatic goniometer stage described in JP-A-2006-090510 is used.
  • the biaxial automatic goniometer stage described in FIGS. 2 and 3 of JP-A-2006-090510 will be described.
  • FIG. 25A and 25B are external views of the 2-axis automatic goniometer stage 400.
  • FIG. 25A shows the goniometer stage 400 when the top plate of the sliding body 42 is in a state parallel to the floor surface.
  • FIG. 25B shows a goniometer stage 400 in which the top plate of the sliding body 42 is tilted. The outline of the goniometer stage 400 will be described below.
  • the goniometer stage 400 is configured by stacking two stages, each of which slides in a longitudinal curved line in a uniaxial direction, by rotating them by 90 degrees so that the axes are orthogonal to each other.
  • the sliding body 42 is provided so as to slide in a vertically curved line with respect to the shaft body 41.
  • the shaft body 41 is provided with the first load portion component 47 in which the vertically curved first load groove 47a is formed.
  • the sliding body 42 is provided with a second load portion component 48 in which a vertically curved second load groove 48a is formed.
  • a load path 43 is formed so as to face the first load groove 47a and the second load groove 48a, and a plurality of rolling elements (not shown) that roll and move on the load path 43 are arranged in the load path 43. .. These rolling elements are arranged at predetermined intervals by a plate-shaped rolling element cage (not shown) that moves in the load path 43.
  • Each of the stacked stages is provided with one load path 43 on each side.
  • Each stage has a servomotor 44 for driving the worm 46, a bearing 45 for receiving the worm 46, and a stopper screw 49 for preventing the rolling element cage from falling off.
  • the worm 46 is connected to the drive shaft of the servomotor 44 via a connecting body.
  • the worm 46 is screwed with a screw portion provided on the lower surface (not shown) of the sliding body 42.
  • the servomotor 44 drives the worm 46
  • the screwed portion is sent out in the direction corresponding to the rotation direction of the worm 46, and the inclination of the sliding body 42 changes.
  • each servomotor 44 of both stages is rotated by a rotation speed corresponding to a desired movement amount, the inclination of the top plate of the sliding body 42 can be changed.
  • the amount of movement can be known from the scale plate 50 indicating the amount of movement of the sliding body 42.
  • the microcomputer 500 that controls the gonio stage 400 and the controller 210 may communicate with each other, and the microcomputer may receive data necessary for adjusting the inclination of the top plate Utop from the controller 210 and control each servomotor.
  • the microcomputer 500 may be omitted, and the controller 210 of the control device 200 may directly control each servomotor of the Gonio stage 400. A specific example of the former will be described.
  • the current top plate Utop is parallel to the virtual plane Km.
  • the microcomputer 500 acquires the height data measured for each of the reference positions P1 to P3, which corresponds to the Z coordinate of the position on the imaginary plane Km, from the controller 210. Further, the microcomputer 500 acquires the data of the deviation amount of each reference height stored in the correction table 230. Then, the height of the end effector 100 of the robot arm operated by the current reference operation parameter based on the height measured for each of the reference positions P1 to P3 and the deviation amount of the microcomputer 500 is on the top plate Utop. The inclination of the current top plate Utop (virtual plane Km) is adjusted so that it becomes constant regardless of the position of.
  • the inclination of the top plate Utop using the gonio stage 400 by adjusting the inclination of the floor surface on which the workbench U is installed and / or the inclination of the floor surface on which the trolley 300 runs is adjusted for each position of the top plate Utop. It is possible to correct the deviation in height from the top plate Utop to the end effector 100 due to the above.
  • the microcomputer 500 may adjust the inclination of the top plate Utop so that the amount of deviation between the height measured for each reference position and the reference height at each reference position stored in the correction table is equal to or less than a predetermined threshold value. Good.
  • the adjustment of the inclination of the top plate Utop according to this modification is a process that replaces the correction of the reference operation parameter of the robot arm. Other processes can be adopted as they are in this modification. It should be noted that the description of the processing when actually combined is omitted because it is duplicated.
  • FIG. 26 is a flowchart showing a processing procedure of the microcomputer 500.
  • step S20 the microcomputer 500 receives from the controller 210 the measurement result of the height from each reference position to the end effector when the robot arm is operated with the reference operation parameter. If the microcomputer 500 does not have the correction table 230, the microcomputer 500 may also receive the correction table 230 from the controller 210.
  • step S22 the microcomputer 500 adjusts the inclination of the upper surface of the workbench based on the height measured for each reference position and the amount of deviation of the reference height at each reference position stored in the correction table.
  • the microcomputer 500 has a height from the upper surface of the workbench to the end effector due to the inclination of the floor on which the trolley runs and / or the inclination of the floor on which the workbench is installed at each position on the upper surface of the workbench. Correct the deviation.
  • the goniometer stage does not have to be biaxial, and may be triaxial.
  • a mechanism that moves up and down in the height direction Z direction
  • a linear stepping motor may be used to move the motor up and down in the Z-axis direction. Since the workbench side can adjust all three axes, the robot arm does not need to adjust the height direction. That is, it is not necessary to include the process of adjusting the height direction in the operation program of the robot arm.
  • the teaching playback causes the robot arm to perform a certain movement and fine adjustment is performed on the workbench. Can be carried by.
  • An exemplary embodiment of the present invention can be used in a robot system having a robot arm that requires accuracy in the height direction.
  • a robot arm FU FA floor surface U workbench Utop top plate 1 robot system 100 end effector 200 control device 210 controller 220 storage device 230 correction table 300 trolley 400 2-axis automatic gonio stage 500 microcomputer

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

高さ補正システムは、第1の床面の上の作業台と、第2の床面の上の台車と、台車の上の、エンドエフェクタを有する多関節ロボットアームと、補正テーブルを記憶した記憶装置と、コントローラとを有する。補正テーブルは、作業台上面の各位置について、上面からその直上のエンドエフェクタまでの高さを、各位置に対応付けて格納し、かつ、作業台上面に予め定義された少なくとも3つの基準位置から各基準位置直上のエンドエフェクタまでの基準高さを格納する。コントローラは、基準動作パラメータでアームを動作させて各基準位置からエンドエフェクタまでの高さを計測し、各基準位置について計測した高さ、および、補正テーブルに格納された基準高さのずれ量に基づいて基準動作パラメータを補正して高さのずれを補正する。

Description

高さ補正システム
本開示は高さ補正システムに関する。
自走可能な台車の上に配置された多関節ロボットアーム(以下「ロボットアーム」と略記する。)を用いて部品を搬送するロボットシステムが知られている。ロボットアームの先端部には、部品を把持する把持部等の「エンドエフェクタ」が設けられている。台車が目的の作業台に到達すると、ロボットアームはエンドエフェクタを利用して当該部品を把持し、ロボットアームを伸縮させることで部品を作業台の天板上の特定の位置まで移動させ、他の部品に組み付ける。 
特開平7-266268号公報は、ロボットアーム(ハンド)の高さ方向や傾きを含む位置決めを行うことのできるハンド位置決め装置を開示する。ハンドは、床面上を走行するモービルロボットに搭載される。ハンド位置決め装置は、アーム先端のカメラでテーブル表面に設けられたマーク(LED)を撮像し、その画像に基づいてアームの高さ位置を補正する。
特開平7-266268号公報
搬送した部品を他の部品に組み付ける際には、予め定められた精度で部品を作業台の天板上の当該他の部品の位置まで移動させることが求められる。ロボットシステムの製造メーカは、例えばロボットシステムの出荷前に自社工場内で精度を確認する。当該出荷前検査では、典型的には、水平な床面に台車および作業台が設置される。 
一方、ロボットシステムが実際に導入される環境(例えば納入先の工場)によっては、作業台が設置される床面、および/または、台車が走行する床面が完全に水平ではない場合があり得る。そのような環境では、ロボットアームを水平に移動させたはずの場合でも、実際にはロボットアームが作業台の天板から遠ざかり、または近づく。ロボットアームには、高さ方向の位置を補正し、予め定められた精度以内に位置ずれを抑制することが求められる。
本開示の高さ補正システムは、例示的な実施形態において、第1の床面の上の作業台と、第2の床面の上の台車と、前記台車の上の多関節ロボットアームであって、先端部にエンドエフェクタを有する多関節ロボットアームと、予め用意された補正テーブルを記憶した記憶装置と、前記補正テーブルを利用して、前記第1の床面の傾きおよび/または前記第2の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正して、前記作業台上面のワークに対し、前記多関節ロボットアームを動作させるコントローラと、を有する高さ補正システムであって、前記補正テーブルは、前記作業台が第1の基準床面に設置され、前記台車が第2の基準床面に設置され、かつ、所与の基準動作パラメータで前記多関節ロボットアームを動作させたときの、前記作業台上面の少なくとも一部の領域内の複数の位置の各々から前記各位置の直上の前記エンドエフェクタまでの高さを、前記各位置に対応付けて格納し、かつ、前記作業台上面に予め定義された少なくとも3つの基準位置から各基準位置直上の前記エンドエフェクタまでの基準高さをそれぞれ格納しており、前記コントローラは、前記作業台上面から、前記少なくとも3つの基準位置を検出し、前記基準動作パラメータで前記多関節ロボットアームを動作させて、検出した前記各基準位置から前記エンドエフェクタまでの高さを計測し、前記各基準位置について計測した前記高さ、および、前記補正テーブルに格納された前記各基準位置における前記基準高さのずれ量に基づいて前記基準動作パラメータを補正することにより、前記作業台上面の前記各位置について、前記第1の床面の傾きおよび/または前記第2の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正する。
アーム側と作業台側の双方の傾きが変化し得る環境でも、作業時のアーム高さ位置の精度を向上させることが可能になる。
図1は、ロボットシステム1の外観図である。 図2は、ロボットシステム1の、主として制御装置200のハードウェアブロック図である。 図3は、補正テーブル230を生成するための環境に設置されたロボットシステム1を示す図である。 図4は、生成される補正テーブル230の具体例を示す図である。 図5は、ロボットアームAが水平面に設置されたときのロボットアームAの高さ方向のゆがみの計測結果を格納したテーブルの一例を示す図である。 図6は、台車300が走行する床面FArefの傾きの計測結果を格納したテーブルの一例を示す図である。 図7は、作業台Uが設置される床面FUrefの傾きの計測結果を格納したテーブルの一例を示す図である。 図8は、特定の環境に導入されたロボットシステム1を示す図である。 図9は、稼働環境に設置されたロボットシステム1の斜視図である。 図10は、位置ごとの台車300が走行する床面FA1の傾きを示す図である。 図11は、位置ごとの作業台Uが設置される床面FU1の傾きを示す図である。 図12は、作業台Uの天板Utopにおける3つの位置P1,P2およびP3を示す図である。 図13は、3つの基準位置P1,P2およびP3における、エンドエフェクタ100の高さの計測結果の例を示す図である。 図14は、差分結果の例を示す図である。 図15は、平面近似を説明するための図である。 図16は、平面近似によって求められた、格子点を構成する各位置におけるエンドエフェクタまでの高さの差分の例を示す図である。 図17は、コントローラ210の処理の手順を示すフローチャートである。 図18は、マスタ作業台MUの特性データを取得するロボットシステム2を示す図である。 図19は、マスタ作業台MUのゆがみの計測結果を格納したテーブルの一例を示す図である。 図20は、新規アームNAとマスタ作業台MUとが組み合わされたロボットシステム3を示す図である。 図21は、新規アームNAのゆがみの計測結果を格納したテーブルの一例を示す図である。 図22は、マスタロボットアームMAと新規作業台NUとが組み合わされたロボットシステム4を示す図である。 図23は、新規作業台NUのゆがみの計測結果を格納したテーブルの一例を示す図である。 図24は、作業台Uに設けられた、2軸自動ゴニオステージ400およびマイコン500を示す図である。 図25Aは、2軸自動ゴニオステージ400の外観図である。 図25Bは、2軸自動ゴニオステージ400の外観図である。 図26は、2軸自動ゴニオステージ400を制御するマイコン500の処理の手順を示すフローチャートである。
以下、添付の図面を参照しながら、本発明による高さ補正システムの実施形態を説明する。以下では、高さ補正システムの実施形態としてロボットシステムを挙げて説明する。 
図1は、ロボットシステム1の外観図である。ロボットシステム1は、先端部にエンドエフェクタ100が取り付けられた多関節ロボットアームA(以下「ロボットアームA」と略記する。)と、制御装置200と、台車300と、作業台Uとを有する。 
ロボットアームAは腰部102のほか、関節104および106を有しており、関節を回転させ、または伸縮させることにより、ロボットアームAの姿勢を変化させる。 
エンドエフェクタ100は、ロボットアームAが作業を行えるようにロボットアームAの先端部に取り付けて用いられる機器である。エンドエフェクタの典型例は、把持部、ナット回し、溶接ガン、およびスプレーガンを含む。エンドエフェクタは、ロボットアームAの用途に応じて、ユーザが適宜取り替えて使用することができる。 
制御装置200は、ロボットアームAの動作を制御する。制御装置200の上部にはロボットアームAの腰部102が固定されている。制御装置200とロボットアームAとは、不図示の電源ケーブル、制御用ケーブルによって接続されている。 
台車300は、ロボットアームAおよび制御装置200を載せて移動する装置である。本実施形態では、台車300は移動のための駆動力(traction)を発生させる車輪を有し、自動走行する無人搬送車である。自動走行は、無人搬送車が通信によって接続されるコンピュータの運行管理システム(不図示)の指令に基づく走行と、無人搬送車が備える制御装置(不図示)による自律的走行とを含む。本実施形態ではさらに、制御装置200と台車300とは不図示の制御用ケーブルによって接続されており、台車300は制御装置200からの指令に基づいて走行することもできる。 
自律的走行には、無人搬送車が所定の経路に沿って目的地に向かう走行のみならず、追尾目標に追従する走行も含まれる。また、無人搬送車は、一時的に作業者の指示に基づくマニュアル走行を行ってもよい。 
「自動走行」は、一般には「ガイド式」の走行および「ガイドレス式」の走行の両方を含み得る。「ガイド式」とは、誘導体を連続的または断続的に設置し、誘導体を利用して無人搬送車を誘導する方式である。「ガイドレス式」とは、誘導体を設置せずに誘導する方式である。本開示の実施形態における台車300は、自己位置推定装置を備え、ガイドレス式で走行することができる。 
「自己位置推定装置」は、レーザレンジファインダなどの外界センサによって取得されたセンサデータに基づいて環境地図上における自己位置を推定する装置である。「外界センサ」は、移動体の外部の状態をセンシングするセンサである。外界センサには、たとえば、レーザレンジファインダ(測域センサともいう)、カメラ(またはイメージセンサ)、LIDAR(Light Detection and Ranging)、ミリ波レーダ、および磁気センサがある。 
台車300は、いわゆるSLAM(Simultaneous Localization and Mapping)」技術により、自己位置推定と環境地図作成を同時に行うことができる。 
作業台Uは天板Utopを有する。本明細書では、天板Utopを「作業台Uの上面」と呼ぶことがある。ロボットアームAは天板Utop上で作業を行う。例えばロボットアームAは、エンドエフェクタ100で把持したワーク(部品)を、天板Utop上に載置された部品に組み付ける。または、ロボットアームAは、エンドエフェクタ100で把持した部品を、天板Utopの所定の位置に載置する。  
ロボットシステム1では、台車300は床面FA上を走行し、作業台Uは床面FU上に設置される。なお、本実施形態では作業台Uは床面FU上に固定的に設置されるとして説明するが、作業台Uも移動のための駆動力を発生させる車輪を有し、自動走行してもよい。 
図2は、ロボットシステム1の、主として制御装置200のハードウェアブロック図である。制御装置200は、コントローラ210と、記憶装置220とを有する。コントローラ210はいわゆるコンピュータであり、たとえば不図示のCPU、内部メモリ(バッファ、レジスタ)、ロボットアームAおよび台車300との間でそれぞれデータを授受するための通信端子を備える。 
記憶装置220は、例えばRAMである。記憶装置220は、補正テーブル230を格納する。補正テーブル230は、所定の環境下でロボットアームAを動作させて予め計測した、位置と高さとを対応付けたテーブルである。補正テーブルの生成方法の詳細は後述する。 
ロボットシステム1が製造メーカから出荷され、例えば納品先の工
場内に実際に導入されたとき、制御装置200のコントローラ210は、導入された環境下で取得したデータと補正テーブル230とを用いて、後述の手順によりロボットアームAの高さ方向のずれを補正することができる。 
図2に示されるロボットアームAおよび台車300については具体的な内部ハードウェアの構成の記載および説明は省略する。ロボットアームAおよび台車300の各々は公知のロボットアームおよび無人搬送車(いわゆるAGV)のハードウェア構成を備えていればよい。そのようなハードウェア構成により、ロボットアームAおよび台車300の各々は、制御装置200のコントローラ210からの指令に従って動作することができる。 
次に、図3から図7を参照しながら、補正テーブル230の具体例および補正テーブル230を生成する手順を説明する。 
図3は、補正テーブル230を生成するための環境に設置されたロボットシステム1を示している。典型的には、図3に示すロボットシステム1は、ロボットシステム1の製造メーカの検査工場に設置されている。他の例として、ロボットシステム1は、納品先工場等に一旦設置された後、工場内の異なる位置に移設されることもあり得る。 
補正テーブル230を生成するための環境下では、作業台Uが設置される床面FUref、および、台車300が走行する床面FArefが予め分かっている。そのため、床面FUrefの傾きおよび床面FArefの傾きを予め取得することができ、取得された傾きを利用して補正テーブル230を生成することができる。なお本明細書では、作業台Uが設置される床面FUrefを「第1の基準床面」と呼び、台車300が走行する床面FArefを「第2の基準床面」と呼ぶことがある。 
図3に示すようにX軸およびY軸を取り、以下に説明する補正テーブル230の横軸および縦軸に対応させる。 
図4は、生成される補正テーブル230の具体例を示している。補正テーブル230の右方向は、図3の+X方向に対応し、下方向は図3の+Y方向に対応する。 
図4に示す補正テーブル230が示す意味を説明する。まず、作業台Uの天板Utopに、X座標およびY座標によって特定される複数の位置を格子点状に設定する。各格子点の直上150mmの高さにエンドエフェクタ100が来るよう、ロボットアームAを動作させ、そのときの実際の高さを計測する。「直上」とは、作業台Uの天板Utopに垂直とは限らない。各格子点から鉛直方向に上方、という意味である。 
格子点を示す座標位置に、計測された高さを記述したテーブルが、補正テーブル230である。すなわち補正テーブル230とは、作業台Uとの関係でロボットアームAを実際に動作させたときの、天板Utop上の位置と、そのときのエンドエフェクタ100の高さとを対応付けて格納したテーブルである。例えば、座標(-10,-10)の位置では、本来150mmの高さであるべきところ、このロボットシステム1では149.6196mmになったことを意味する。なお、座標位置および150mmという数値は一例である。作業台Uの天板Utopの大きさ、エンドエフェクタ100に必要とされる作業位置によっては、座標のとり方および高さは適宜変更し得る。 
補正テーブル230には、ロボットシステム1の高さ方向の動作精度を左右する種々の要因が反映されている。具体的には、補正テーブル230には、(1)ロボットアームAの高さ方向の精度のばらつき、(2)台車300が走行する床面FArefの傾き、および(3)作業台Uが設置される床面FUrefの傾きである。ロボットアームAの高さ方向の精度のばらつきには、さらにロボットアームAの腰部102が制御装置200に固定されたときの傾き、ロボットアームAの各関節の動作精度のばらつきも含まれ得る。 
補正テーブル230を生成するため、上述の要因(1)~(3)を独立して取得する。 
図5は、ロボットアームAが水平面に設置されたときのロボットアームAの高さ方向のゆがみの計測結果を格納したテーブルの一例を示している。作業台Uが設置される床面および台車300が走行する床面の両方を水平面に一致させた状態で、エンドエフェクタ100の天板Utopからの高さを計測する。高さの計測に当たっては、例えばエンドエフェクタ100近傍に取り付けたレーザ測距装置(不図示)を利用する方法が考えられる。 
コントローラ210はエンドエフェクタ100を、例えば座標(5・m,5・n)(m:-2から2までの整数、n:-2から2までの整数)の上方150mmの位置に順次移動させる。位置が変わるたびに、レーザ測距装置は、ロボットアームAを天板Utopから150mmの高さまで動くよう動作させたときの、各位置に対応するエンドエフェクタ100から天板Utopまでの高さを計測する。このようにして取得された高さの計測結果には、床面の傾きの影響はなく、ロボットアームAの高さ方向のゆがみのみが反映されている。 
図6は、台車300が走行する床面FArefの傾きの計測結果を格納したテーブルの一例を示している。また図7は、作業台Uが設置される床面FUrefの傾きの計測結果を格納したテーブルの一例を示している。これらは、位置(X,Y)における、水平面からの高さ方向のずれ量を表している。水平面よりも高い場合には正の値が与えられ、水平面よりも低い場合には負の値が与えられる。 
位置(X,Y)における、要因(1)を示すテーブル(図5)の値を「V1(X,Y)」と表し、要因(2)を示すテーブル(図6)の値を「V2(X,Y)」と表し、要因(3)を示すテーブル(図7)の値を「V3(X,Y)」と表す。すると補正テーブル230の値V(X,Y)は以下の式によって算出される。 (式1) V(X,Y)=V1(X,Y)+V2(X,Y)-V3(X,Y) 
なお、本実施形態においては、作業台Uの天板Utopは、凹凸が無視できる程度に少ない平坦面であると仮定している。しかしながら、天板Utopに無視できない凹凸が存在し、ロボットアームAのエンドエフェクタ100の位置合わせのために考慮する必要がある場合には、位置ごとの天板Utopの凹凸を計測したテーブルをさらに考慮して、補正テーブル230の値V(X,Y)を生成してもよい。 
以上の考え方および手順により、補正テーブル230を予め用意することができる。本明細書では、補正テーブル230を構成する座標ごとの高さは、その座標における「基準高さ」と呼ぶことがある。また本実施形態では、複数の座標のうちの少なくとも3つの座標を「基準位置」と呼ぶことがある。基準位置の座標は、例えば、(-10,-10)、(-10,10)および(10,10)であり、いずれも天板Utopの端部の位置を採用した。補正テーブル230では、基準位置に対応する高さが関連付けられている。「基準高さ」および「基準位置」は後に説明する。 
次に、ロボットシステム1が実際に導入された環境で、ロボットアームAを高さ方向について精度よく動作させるための高さ補正方法を説明する。 
高さを補正するためには、所定のデータを事前に取得しておく。 
図8は、特定の環境に導入されたロボットシステム1を示している。図9は、稼働環境に設置されたロボットシステム1の斜視図である。図8に示す鎖線は水平面を示している。図1とは異なる環境であることを示すため、図8および図9では、台車300が走行する床面FA1、および、作業台Uが設置される床面FU1が傾いていることをやや強調して記載した。つまり、床面FA1は床面FA(図1)と異なっており、床面FU1も床面FU(図1)と異なっている。なお、床面FA1または床面FU1の一方の傾きが、図1の例と相違していていもよい。床面の傾き以外は、図1の例と同じである。図1に示す作業台UおよびロボットアームAがそのまま異なる環境に導入されるため、図8のロボットシステム1では、ロボットアームAの高さ方向の精度のばらつきは図1のロボットシステム1と同じである。 
ロボットシステム1が導入された環境において、台車300が走行する床面FA1の傾き、および、作業台Uが設置される床面FU1の傾きは、計測可能である。本実施形態では設置者が床面FA1の傾きおよび床面FU1の傾きを別個独立で求め、そのデータを制御装置200の記憶装置220に格納しておく。 
図10は、位置ごとの台車300が走行する床面FA1の傾きを示し、図11は、位置ごとの作業台Uが設置される床面FU1の傾きを示している。図10の例によれば、台車300が走行する床面FA1は、手前ほど(+Y方向になるほど)高くなるよう傾いている。一方図11の例によれば、作業台Uが設置される床面FU1の傾きは、右手ほど(+X方向になるほど)高くなるよう傾いている。 
次に、導入された環境下でロボットアームAの高さを計測する。補正テーブル230生成時には、格子点状の位置ごとに高さを計測した(図5)。しかしながらここでは、少なくとも3つの位置における高さを計測すればよい。以下では制御装置200によって自動的に行う例を説明する。 
図12は、作業台Uの天板Utopにおける3つの位置P1,P2およびP3を示している。ここでいう3つの位置P1,P2およびP3は、上述の補正テーブル230において高さが対応付けられている基準位置と同じである。そこで以下でも基準位置P1,P2およびP3と呼ぶ。基準位置P1,P2およびP3の各座標は、(-10,-10)、(-10,10)および(10,10)である。  
制御装置200のコントローラ210は、天板Utopから上述の3つの基準位置を検出する。検出方法の一例として、コントローラ210は、図示されない撮像装置で天板Utopを撮影し、取得した画像から認識される天板Utopの3つの隅(端部)を基準位置P1,P2およびP3として決定すればよい。 
コントローラ210は、多関節ロボットアームを動作させて、検出した各基準位置からエンドエフェクタまでの高さを計測する。計測方法の一例として、コントローラ210は、図5に示すテーブルを生成するときと同様、レーザ測距装置(不図示)を用いることができる。 
図13は、3つの基準位置P1,P2およびP3における、エンドエフェクタ100の高さの計測結果の例を示している。 
コントローラ210は、各基準位置について計測した高さ、および、補正テーブル230に格納された各基準位置における前記基準高さのずれ量に基づいて高さのずれを補正する。以下、具体的に説明する。 
ロボットアームAを動作させるため、コントローラ210は「基準動作パラメータ」を予め保持している。ある特定の3次元座標位置にエンドエフェクタ100を移動させる例を考える。コントローラ210は、腰部102のモータの回転方向および回転角の大きさ、複数の関節の各々に設けられたモータの回転方向および回転角の大きさを指定し、制御量としてロボットアームAに送信する。ロボットアームAは受信した制御量に基づいて各モータを指定された回転方向に指定された角度だけ回転させる。このような、所望の3次元座標位置にエンドエフェクタ100を移動させるためにロボットアームAの姿勢を決定する制御量が「基準動作パラメータ」である。本実施形態では、天板Utop上の格子点の各位置の上方150mmに位置させるための、個々の「基準動作パラメータ」が予め用意されていると考えることができる。 
本来、基準動作パラメータで動作すれば所望の3次元座標位置にエンドエフェクタ100を移動させることができるはずであるが、上述の種々の要因で高さ方向の位置がずれる状況では、本来の高さになるよう「基準動作パラメータ」を補正する必要がある。「基準動作パラメータ」を補正することにより、天板
Utopの各位置について、台車300が走行する床面FA1の傾き、および、作業台Uが設置される床面FU1の傾きに起因する、天板Utopからエンドエフェクタ100までの高さのずれを補正することができるようになる。 
そこで、コントローラ210は、3つの基準位置P1,P2およびP3に関し、取得した計測結果と、補正テーブル230中の値Vとの差分を計算する。図14は、差分結果の例を示している。基準位置P1(-10,-10)およびP3(10,10)では誤差はないが、基準位置P2(-10,10)においては0.4mmの誤差が生じていることが理解される。 
3つの基準位置だけではなく、格子点を構成する各位置についても誤差を求めるため、本願発明者は、床面FArefの傾き、および床面FUrefの傾きに起因する高さのずれを平面近似した。 
図15は、平面近似を説明するための図である。 
基準位置P1~P3の座標値と、補正テーブルの値Vとを用いると、3次元位置を示す3つの点が得られる。すなわち、基準位置P1および基準位置P1における補正テーブル230の値Vの組、基準位置P2および基準位置P2における補正テーブル230の値Vの組、および、基準位置P3および基準位置P3における補正テーブル230の値Vの組によって、3つの三次元位置を求めることができる。これらの3つの点で張られる仮想的な平面を「平面Kref」と呼ぶ。 
一方、基準位置P1~P3の座標値と、取得した計測結果(図13)とを用いても3次元位置を示す3つの点が得られる。すなわち基準位置P1および基準位置P1において計測された高さの組、基準位置P2および基準位置P2において計測された高さの組、および、基準位置P3および基準位置P3において計測された高さの組によって、3つの三次元位置を求めることができる。それらによって張られる仮想的な平面を「平面Km」と呼ぶ。 
図14に示す差分によれば、平面Krefと平面Kmとは、基準位置P1上方の座標(-10,-10,149.6196)の点、および、基準位置P3上方の座標(10,10,149.948)の点を共有する。つまり平面Krefおよび平面Kmは、この2点を通過する直線Lで交わっている。そして基準位置P2の上方において、0.4mmの誤差が生じている、と言うことができる。 
本願発明者は、ロボットシステム1が導入された環境にいて、天板Utopに設定された複数の格子点の位置のうち、基準位置以外のN個の格子点の位置に対応する高さを、平面Kmまでの高さとして求めることとした。つまりコントローラ210は、格子点を構成する、当該N個の位置の各々を通る鉛直線が仮想的な平面Kmと交わる位置における高さを、当該N個の位置の各々におけるエンドエフェクタまでの高さとして近似する。 
図16は、平面近似によって求められた、格子点を構成する各位置におけるエンドエフェクタまでの高さの差分の例を示している。位置ごとに、補正テーブル230の値Vと図16に示す差分テーブルの値とを加算すると、新たに導入された環境下でロボットアームAの高さを推定することができる。 
コントローラ210は、近似した各位置における高さが、本来必要とされていた高さ(本実施形態では150mm)に近づくよう、3つの基準位置およびN個の位置の各々における基準動作パラメータを補正する。これにより、天板Utopの各位置について、台車300が走行する床面FA1の傾き、および、作業台Uが設置される床面FU1の傾きに起因する、天板Utopからエンドエフェクタ100までの高さのずれを補正することができる。 
なお、補正テーブル230(図4)に格納された位置ごとの高さ値の精度が十分高いと言える場合がある。その場合には、コントローラ210に、上述のN個の各位置について近似された高さと、補正テーブル230に格納されたN個の各位置における高さとのずれ量(差分)をより小さくするよう、N個の位置の各々に関する基準動作パラメータを補正させてもよい。 
図17は、コントローラ210の処理の手順を示すフローチャートである。 
ステップS10においてコントローラ210は、作業台Uの天板Utop(上面)から、各基準位置を検出する。 
ステップS12においてコントローラ210は、基準動作パラメータでロボットアームを動作させて、検出した各基準位置からエンドエフェクタまでの高さを計測する。 
ステップS14においてコントローラ210は、各基準位置について計測した高さ、および、補正テーブルに格納された各基準位置における基準高さのずれ量に基づいて基準動作パラメータを補正する。これにより、作業台上面の各位置について、床面FAの傾きおよび/または床面FUの傾きに起因する、作業台上面からエンドエフェクタまでの高さのずれを補正することができる。 
上述の説明では、コントローラ210が3つの基準位置を検出すること、および、高さを計測することは必須ではなく他の方法を用いてもよい。例えば水平方向の移動の精度が十分確保できるのであれば、水平方向に関して3つの基準位置の位置をティーチングし、ロボットアームAを基準位置上方でそれぞれ停止させることができるのであれば、コントローラ210が3つの基準位置を検出する必要はない。また、3つの基準位置の上方のエンドエフェクタ100の位置(高さ)を人為的に計測し、計測結果を送信して記憶装置220に格納させてもよい。 
ここまでは、1組のロボットアームAおよび作業台Uを想定し、補正テーブル230を作成した環境と設置される環境とが異なっている場合の高さ方向の補正処理の例を説明した。 
以下では、補正処理の2つの変形例を説明する。 
第1の変形例として、特定のロボットアームおよび作業台の組み合わせを基準として、ロボットアームは同じだが他の作業台が組み合わされた場合、または、作業台は同じだが他のロボットアームが新しく組み合わされた場合を想定した補正処理を説明する。 
第2の変形例として、高さ方向の位置ずれをロボットアームに補正させるのではなく、上下方向の高さおよび角度を調整可能な作業台を用いる例を説明する。 
第1の変形例では、「マスタロボットアーム」および「マスタ作業台」という語を導入する。「マスタロボットアーム」および「マスタ作業台」は、組み合わせの基準となる特定のロボットアームおよび作業台を意味する。以下ではマスタロボットアームには「MA」という参照符号を付し、マスタ作業台には「MU」という参照符号を付す。マスタロボットアームMAおよびマスタ作業台MUの組み合わせの例は、図1~図3におけるロボットアームAおよび作業台Uである。マスタロボットアームMAおよびマスタ作業台MUの各ハードウェア構成は、ロボットアームAおよび作業台Uの各ハードウェア構成と同じである。以下では、適宜同じ参照符号を付して説明する。 
本変形例では、「マスタロボットアーム」とは異なる他のロボットアーム(新規アーム)と、「マスタ作業台」とが組み合わされた場合および、「マスタロボットアームMA」と、「マスタ作業台MU」とは異なる他の作業台(新規作業台)とが組み合わされた場合の例を説明する。 
まず、マスタロボットアームMAとマスタ作業台MUの各々に固有の特性を示す特性データを取得しておく。 
マスタロボットアームMAの特性データの取得方法は、図5に示されるテーブルの取得方法と同じである。すなわち、マスタロボットアームAが水平面に設置されたときのマスタロボットアームAの高さ方向のゆがみが、マスタロボットアームMAの特性データである。 
一方、作業台MUの特性データの取得方法は以下のとおりである。 
図18は、マスタ作業台MUの特性データを取得するロボットシステム2を示している。床面FUおよびFAは水平面である。 
コントローラ210は、例えば天板Utopの座標(-10,-10)の上方150mmの高さにエンドエフェクタ100が位置するようマスタロボットアームMAを制御する。そしてその姿勢をそのまま維持させながら、コントローラ210は、台車300をX方向に平行に定量ピッチ(例えば+5)だけ移動させては停止し、移動させては停止する動作を繰り返し実行させる。停止するたびにレーザ測距装置は、天板Utopからエンドエフェクタ100までの高さを計測する。その結果、座標(-10,-10)、(-5,-10)、(0,-10)、(5,-10)および(10,-10)の各座標位置における高さの計測結果が取得される。 
さらに同様に、Y方向に+5だけずれた位置に移動し、天板Utopの座標(-10,-5)、(-5,-5)、・・・、(10,-5)の各位置における高さの計測結果を取得する。同様の動作を、座標(10,10)の位置における高さの計測結果を取得するまで継続する。 
床面FUおよびFAは水平面であること、および、マスタロボットアームMAの姿勢が維持されていることにより、得られた高さの計測結果は、マスタ作業台MUの「ゆがみ」を反映していると言える。図19は、マスタ作業台MUのゆがみの計測結果を格納したテーブルの一例を示している。 
次に、新規アームNAとマスタ作業台MUとが組み合わされた場合の高さ補正処理の例を説明する。 
図20は、新規アームNAとマスタ作業台MUとが組み合わされたロボットシステム3を示している。まず、新規アームNAを制御する制御装置200は、新規アームNAのゆがみの計測結果を取得する。計測方法は、図5に関連して説明した、ロボットアームAを用いた高さ方向のゆがみの計測方法と同じである。新規アームNAのゆがみの計測時には、新規アームNAは、マスタロボットアームMAのゆがみが計測されたときのマスタロボットアームMAの位置に設置される。上述のように、本変形例ではマスタロボットアームMAおよびマスタ作業台MUの組み合わせの例として、図1~図3におけるロボットアームAおよび作業台Uを挙げた。その例に沿うと、新規アームNAは図3に示すロボットアームAの位置に設置される。なお新規アームNAが載置される制御装置200および台車300は、図3におけるロボットアームAを載置していた制御装置200および台車300と完全に同じである必要はない。 
図21は、新規アームNAのゆがみの計測結果を格納したテーブルの一例を示している。ゆがみの計測条件は、図5に示すマスタロボットアームMAのゆがみの計測時と同じである。したがって、図21に示す計測結果は、新規アームNAの特性データである。位置(X,Y)における当該テーブルの値を「V1NA(X,Y)」と表す。 
上述のように、補正テーブル230の値V(X,Y)は、上述の(式1)によって算出されていた。(式1)を再掲する。 (式1)V(X,Y)=V1(X,Y)+V2(X,Y)-V3(X,Y) 
この式の「V1(X,Y)」がマスタロボットアームMAの歪みを表す。そこで「V1(X,Y)」に代えて、「V1NA(X,Y)」を用いて(式1)を終止した(式2)を求める。 (式2)Vrev(X,Y)=V1NA(X,Y)+V2(X,Y)-V3(X,Y) 
このようにして修正された補正テーブルの値Vrev(X,Y)を得ることができる。なお、V2(X,Y)およびV3(X,Y)は、それぞれ、台車300が走行する床面の傾きの計測結果を格納したテーブルの値、および、マスタ作業台MUが設置される床面の傾きの計測結果を格納したテーブルの値を示している。新規アームNAおよびマスタ作業台MUが設置される環境に応じて計測される必要がある。 
修正された補正テーブルを利用してエンドエフェクタ100の高
さを補正する方法は、上述のとおりである。すなわち上述した「ロボットアームA」を「新規アームNA」に読み替えれば、新規アームNAまたはマスタ作業台MUが水平面ではない床面に設置された場合でも、エンドエフェクタ100の高さを補正することができる。 
次に、マスタロボットアームMAと新規作業台NUとが組み合わされた場合の高さ補正処理の例を説明する。 
図22は、マスタロボットアームMAと新規作業台NUとが組み合わされたロボットシステム4を示している。まず、制御装置200は、新規作業台NUのゆがみの計測結果を取得する。計測方法は、図18および図19に関連して説明した、マスタ作業台MUの高さ方向のゆがみの計測方法と同じである。新規作業台NUのゆがみの計測時には、新規作業台NUは、マスタ作業台MUのゆがみが計測されたときのマスタ作業台MUの位置に設置される。例えばマスタ作業台MUは、図18に示すマスタ作業台MUの位置に設置される。 
図23は、新規作業台NUのゆがみの計測結果を格納したテーブルの一例を示している。コントローラ210は、位置ごとに、当該テーブルの値と、図19に示される、マスタ作業台MUのゆがみの計測結果を格納したテーブルの値との差分を算出する。得られた差分を位置ごとに配置した差分テーブルは、マスタ作業台MUの特性データを基準とした、新規作業台NUの特性データである。位置(X,Y)における当該差分テーブルの値を「Vdiff(X,Y)」と表す。 
図5に示すテーブルは、マスタ作業台MUとマスタロボットアームMAとを水平面に設置したときの、マスタロボットアームMAの特性データである。マスタ作業台MUに代えて新規作業台NUを採用した場合、マスタロボットアームMAの高さ方向のゆがみの計測結果には、上述した新規作業台NUの特性データが反映される。換言すると、図5に示すテーブルを、上述の差分テーブルで修正することにより、新規作業台NUとマスタロボットアームMAとを水平面に設置したときのマスタロボットアームMAの特性データが得られる。 
具体的には、下記の(式3)により、修正した補正テーブルの値Vrev(X,Y)を得ることができる。 (式3)Vrev(X,Y)=V1(X,Y)+Vdiff(X,Y)+V2(X,Y)-V3(X,Y) 
なお、V2(X,Y)およびV3(X,Y)は、それぞれ、台車300が走行する床面の傾きの計測結果を格納したテーブルの値、および、新規作業台NUが設置される床面の傾きの計測結果を格納したテーブルの値を示している。マスタロボットアームMAおよび新規作業台NUが設置される環境に応じて計測される必要がある。 
これまでの説明では、ロボットアームの基準動作パラメータを補正することによって、作業台上面(天板)からエンドエフェクタまでの高さのずれを補正した。以下では、ロボットアームの基準動作パラメータを補正するのではなく、天板の傾きを調整する機構(傾き調整機構)を有する作業台が天板の傾きを調整する。本実施形態においては、傾き調整機構として2軸自動ゴニオステージを採用する。 
図24は、作業台Uに設けられた、2軸自動ゴニオステージ400およびマイコン500を示している。マイコン500は2軸自動ゴニオステージ400(以下「ゴニオステージ400」と略記する。)を制御して、作業台Uの天板Utopの傾きを調整する。 
まず、傾き調整機構である2軸自動ゴニオステージ400を説明する。2軸自動ゴニオステージを採用する場合、ロボットアームの基準動作パラメータを補正しなくても、エンドエフェクタと天板との高さが一定になるよう調整できる。天板に垂直なZ軸方向の絶対的な高さは、ロボットアームの動作によって調整する。 
本実施形態では、例えば特開2006-090510公報に記載された周知の2軸自動ゴニオステージを利用する。以下、特開2006-090510公報の図2および図3に記載された2軸自動ゴニオステージを説明する。 
図25Aおよび図25Bは、2軸自動ゴニオステージ400の外観図である。図25Aは、摺動体42の天板を床面と平行な状態にしたときのゴニオステージ400を示している。図25Bは、摺動体42の天板を傾斜させたゴニオステージ400を示している。以下、ゴニオステージ400の概要を説明する。 
ゴニオステージ400は、各々が一軸方向に縦湾曲線摺動する2つのステージを、軸が互いに直交するよう90度回転させて重ねて構成されている。 
摺動体42は軸体41に対して縦湾曲線摺動するように設けられている。 
具体的には、軸体41に、縦湾曲形状の第一負荷溝47aが形成された第一負荷部構成材47が設けられる。一方、摺動体42に、縦湾曲形状の第二負荷溝48aが形成された第二負荷部構成材48が設けられる。第一負荷溝47a及び第二負荷溝48aは対向して負荷路43が形成され、この負荷路43には該負荷路43を転動移動する複数の転動体(図示省略)が配設される。これらの転動体は負荷路43を移動する板状の転動体保持器(図示省略)により所定間隔を保持して配設されている。なお、重ね合わされた各ステージには、負荷路43は左右一箇所ずつ設けられている。 
各ステージは、ウオーム46を駆動するサーボモータ44、ウオーム46を受ける軸受け45、転動体保持器の脱落を阻止するストッパーネジ49を有している。ウオーム46は、サーボモータ44の駆動軸と連結体を介して連結されている。ウオーム46は、摺動体42の下面(図示せず)に設けられた螺合部と螺合する。サーボモータ44がウオーム46を駆動すると、ウオーム46の回転方向に応じた方向に螺合部が送り出され、摺動体42の傾きが変化する。両方のステージの各サーボモータ44を、所望の移動量に応じた回転数だけ回転させると、摺動体42の天板の傾きを変化させることができる。移動量は、摺動体42の移動量を示す目盛り板50により知ることができる。 
上述のゴニオステージ400の天板と作業台Uの天板Utopの裏面とを固定することにより、天板Utopの傾きを調整することが可能になる。ゴニオステージ400を制御するマイコン500と、コントローラ210とが通信し、マイコンがコントローラ210から天板Utopの傾きの調整を行うために必要なデータを受け取り、各サーボモータの制御を行ってもよいし、マイコン500を省略して制御装置200のコントローラ210が直接ゴニオステージ400の各サーボモータの制御を行ってもよい。前者の具体例を説明する。 
図15に示す状況を考える。現在の天板Utopは仮想的な平面Kmと平行である。マイコン500は、コントローラ210から、想的な平面Km上の位置のZ座標に相当する、基準位置P1~P3の各々について計測した高さのデータを取得する。さらにマイコン500は、補正テーブル230に格納された各基準高さのずれ量のデータを取得する。そしてマイコン500は、基準位置P1~P3の各々について計測した高さ、および、ずれ量に基づいて、現在の基準動作パラメータで動作させたロボットアームのエンドエフェクタ100の高さが、天板Utop上の位置によることなく一定になるよう、現在の天板Utop(仮想的な平面Km)の傾きを調整する。すなわち、ゴニオステージ400を用いて天板Utopの傾きを調整することにより、天板Utopの各位置について、作業台Uが設置された床面の傾きおよび/または台車300が走行する床面の傾きに起因する、天板Utopからエンドエフェクタ100までの高さのずれを補正することができる。 
なお、エンドエフェクタ100の高さを天板Utop上の位置によることなく一定に保つ、ことは、厳密でなくてもよい。例えば、マイコン500は、各基準位置について計測した高さと、補正テーブルに格納された各基準位置における基準高さとのずれ量が所定の閾値以下になるよう、天板Utopの傾きを調整してもよい。本変形例による天板Utopの傾きの調整は、ロボットアームの基準動作パラメータの補正に代わる処理である。他の処理はそのまま本変形例においても採用できる。なお、実際に組み合わせた場合の処理の説明は重複するために省略する。 
図26は、マイコン500の処理の手順を示すフローチャートである。 
ステップS20において、マイコン500は、コントローラ210から、基準動作パラメータでロボットアームを動作させたときの各基準位置からエンドエフェクタまでの高さの計測結果を受け取る。マイコン500が補正テーブル230を有しない場合には、マイコン500はコントローラ210から補正テーブル230も受け取ってもよい。 
ステップS22において、マイコン500は、各基準位置について計測した高さ、および、補正テーブルに格納された各基準位置における基準高さのずれ量に基づいて作業台上面の傾きを調整する。これによりマイコン500は、作業台上面の各位置について、台車が走行する床面の傾きおよび/または作業台が設置された床面の傾きに起因する、作業台上面からエンドエフェクタまでの高さのずれを補正する。 
なお、ゴニオステージは2軸である必要はなく、3軸であってもよい。3軸の場合には、高さ方向(Z方向)に上下する機構を設ければよい。例えば、リニアステッピングモータを利用してZ軸方向に上下させてもよい。作業台側が3軸のすべてを調整できるため、ロボットアームが高さ方向を調整する必要がなくなることである。つまり、ロボットアームの動作プログラムには、高さ方向を調整する処理を含める必要がなくなる。さらに、ロボットアーム側の3軸方向の位置決めが別のメカ機構や力センサを用いたならい動作によって保障される場合、ティーチングプレイバックにより、ロボットアームに一定の動作を行わせ、微調整を作業台に担わせることができる。
本発明の例示的な実施形態は、高さ方向の精度が要求されるロボットアームを有するロボットシステムに利用できる。
A ロボットアーム FU,FA 床面 U 作業台 Utop 天板  1 ロボットシステム 100 エンドエフェクタ 200 制御装置 210 コントローラ 220 記憶装置 230 補正テーブル 300 台車 400 2軸自動ゴニオステージ 500 マイコン

Claims (9)

  1. 第1の床面の上の作業台と、 第2の床面の上の台車と、 前記台車の上の多関節ロボットアームであって、先端部にエンドエフェクタを有する多関節ロボットアームと、 予め用意された補正テーブルを記憶した記憶装置と、 前記補正テーブルを利用して、前記第1の床面の傾きおよび/または前記第2の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正して、前記作業台上面のワークに対し、前記多関節ロボットアームを動作させるコントローラと、 を有する高さ補正システムであって、 前記補正テーブルは、前記作業台が第1の基準床面に設置され、前記台車が第2の基準床面に設置され、かつ、所与の基準動作パラメータで前記多関節ロボットアームを動作させたときの、前記作業台上面の少なくとも一部の領域内の複数の位置の各々から前記各位置の直上の前記エンドエフェクタまでの高さを、前記各位置に対応付けて格納し、かつ、前記作業台上面に予め定義された少なくとも3つの基準位置から各基準位置直上の前記エンドエフェクタまでの基準高さをそれぞれ格納しており、 前記コントローラは、  前記作業台上面から、前記少なくとも3つの基準位置を検出し、  前記基準動作パラメータで前記多関節ロボットアームを動作させて、検出した前記各基準位置から前記エンドエフェクタまでの高さを計測し、  前記各基準位置について計測した前記高さ、および、前記補正テーブルに格納された前記各基準位置
    における前記基準高さのずれ量に基づいて前記基準動作パラメータを補正することにより、前記作業台上面の前記各位置について、前記第1の床面の傾きおよび/または前記第2の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正する、高さ補正システム。
  2. 前記コントローラは、前記各基準位置について計測した前記高さと、前記補正テーブルに格納された前記各基準位置における前記基準高さとのずれ量をより小さくするよう、前記基準動作パラメータを補正する、請求項1に記載の高さ補正システム。
  3. 前記少なくとも3つの基準位置は、前記作業台上面の第1基準位置、第2基準位置および第3基準位置を含み、 前記補正テーブルは、  前記第1基準位置と、前記第1基準位置における前記エンドエフェクタまでの第1基準高さとを対応付け、  前記第2基準位置と、前記第2基準位置における前記エンドエフェクタまでの第2基準高さとを対応付け、  前記第3基準位置と、前記第3基準位置における前記エンドエフェクタまでの第3基準高さとを対応付け、  前記作業台上面のさらにN個(N:正の整数)の位置の各々と、前記N個の位置の各々における前記エンドエフェクタまでの高さとを対応付けて格納しており、 前記コントローラは、  前記第1基準位置および前記第1基準位置において計測された前記高さの組、前記第2基準位置および前記第2基準位置において計測された前記高さの組、および、前記第3基準位置および前記第3基準位置において計測された前記高さの組によって定まる3つの三次元位置を通る仮想的な平面を算出し、  前記N個の位置の各々を通る鉛直線が前記仮想的な平面と交わる位置における高さを、前記N個の位置の各々における前記エンドエフェクタまでの高さとして近似し、  前記N個の位置の各々について前記補正テーブルに対応付けられた高さ、および、近似された前記高さのずれ量に基づいて、前記N個の位置の各々における前記基準動作パラメータを補正する、請求項1または2に記載の高さ補正システム。
  4. 前記コントローラは、前記N個の位置の各々について近似された前記高さと、前記補正テーブルに格納された前記N個の位置の各々における前記高さとのずれ量をより小さくするよう、前記N個の位置の各々における前記基準動作パラメータを補正する、請求項3に記載の高さ補正システム。
  5. 前記第1基準位置、第2基準位置、第3基準位置および前記N個の位置は、前記作業台上面の格子点の位置である、請求項1から4のいずれかに記載の高さ補正システム。
  6. 前記第1の床面の傾きは前記第1の基準床面の傾きと異なっており、 前記コントローラは、前記第1の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正する、請求項1から5のいずれかに記載の高さ補正システム。
  7. 前記第2の床面の傾きは前記第2の基準床面の傾きと異なっており、 前記コントローラは、前記第2の床面の傾きに起因する、前記作業台上面から前記エンドエフェクタまでの高さのずれを補正する、請求項1から6のいずれかに記載の高さ補正システム。
  8. 前記作業台は、前記補正テーブルが作成されたときの作業台とは異なる、請求項1から7のいずれかに記載の高さ補正システム。
  9. 前記台車および前記多関節ロボットアームの組み合わせは、前記補正テーブルが作成されたときの台車および多関節ロボットアームの組み合わせとは異なる、請求項1から7のいずれかに記載の高さ補正システム。
PCT/JP2020/035660 2019-09-27 2020-09-23 高さ補正システム WO2021060227A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021548903A JPWO2021060227A1 (ja) 2019-09-27 2020-09-23
CN202080067199.3A CN114450130A (zh) 2019-09-27 2020-09-23 高度校正***

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019176693 2019-09-27
JP2019-176693 2019-09-27

Publications (1)

Publication Number Publication Date
WO2021060227A1 true WO2021060227A1 (ja) 2021-04-01

Family

ID=75164917

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/035660 WO2021060227A1 (ja) 2019-09-27 2020-09-23 高さ補正システム

Country Status (3)

Country Link
JP (1) JPWO2021060227A1 (ja)
CN (1) CN114450130A (ja)
WO (1) WO2021060227A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223658A1 (ja) * 2022-05-16 2023-11-23 株式会社デンソー 搬送処理システム、搬送処理装置、自律搬送車両、搬送処理方法、搬送処理プログラム
WO2024128119A1 (ja) * 2022-12-12 2024-06-20 オムロン株式会社 シミュレーションシステムおよびシミュレーション方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07266268A (ja) * 1994-03-24 1995-10-17 Murata Mach Ltd モービルロボットのハンド位置決め装置
WO2015079740A1 (ja) * 2013-11-28 2015-06-04 三菱電機株式会社 ロボットシステムおよびロボットシステムの制御方法
JP2019098409A (ja) * 2017-11-28 2019-06-24 東芝機械株式会社 ロボットシステムおよびキャリブレーション方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3542046B2 (ja) * 1994-06-06 2004-07-14 蛇の目ミシン工業株式会社 卓上型ロボット
EP2722136A1 (en) * 2012-10-19 2014-04-23 inos Automationssoftware GmbH Method for in-line calibration of an industrial robot, calibration system for performing such a method and industrial robot comprising such a calibration system
JP2014176943A (ja) * 2013-03-15 2014-09-25 Yaskawa Electric Corp ロボットシステム、校正方法及び被加工物の製造方法
JP6137005B2 (ja) * 2014-03-19 2017-05-31 トヨタ自動車株式会社 搬送ロボット及び搬送方法
EP3556519B1 (en) * 2016-12-13 2020-12-02 Fuji Corporation Method for correcting target position of work robot

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07266268A (ja) * 1994-03-24 1995-10-17 Murata Mach Ltd モービルロボットのハンド位置決め装置
WO2015079740A1 (ja) * 2013-11-28 2015-06-04 三菱電機株式会社 ロボットシステムおよびロボットシステムの制御方法
JP2019098409A (ja) * 2017-11-28 2019-06-24 東芝機械株式会社 ロボットシステムおよびキャリブレーション方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223658A1 (ja) * 2022-05-16 2023-11-23 株式会社デンソー 搬送処理システム、搬送処理装置、自律搬送車両、搬送処理方法、搬送処理プログラム
WO2024128119A1 (ja) * 2022-12-12 2024-06-20 オムロン株式会社 シミュレーションシステムおよびシミュレーション方法

Also Published As

Publication number Publication date
JPWO2021060227A1 (ja) 2021-04-01
CN114450130A (zh) 2022-05-06

Similar Documents

Publication Publication Date Title
US8467901B2 (en) Calibration of a base coordinate system for an industrial robot
JP7314475B2 (ja) ロボット制御装置、及び、ロボット制御方法
US20130123982A1 (en) Calibration method for tool center point of a robot manipulator
US10525598B2 (en) Positioning system using robot
US20140229005A1 (en) Robot system and method for controlling the same
WO2021060227A1 (ja) 高さ補正システム
US11285609B2 (en) Working position correcting method and working robot
CN111452047B (zh) 机器人工具偏差的修正方法、机器人控制装置及***
KR20160010868A (ko) 비전을 갖는 자동화 기계가공 헤드 및 방법
US11679508B2 (en) Robot device controller for controlling position of robot
US20210299861A1 (en) Control system and control method
US11161697B2 (en) Work robot system and work robot
US11376734B2 (en) Trajectory control device
JP2021049607A (ja) ロボットに支持された部材の位置を調整するロボット装置の制御装置
CN110977963A (zh) 一种工业机器人标定***的自适应对准控制方法
WO2021060228A1 (ja) 高さ補正システム
CN114505865B (zh) 一种基于位姿跟踪的机械臂路径生成方法及***
US11141855B2 (en) Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article
JP2024512827A (ja) 適応コンプライアンスに基づいたロボット組立のためのシステムおよび方法
CN114012719A (zh) 一种六轴机器人的零点标定方法及***
CN113580126A (zh) 用于设置机器人装配操作的***和方法
JP2020142324A (ja) ロボット装置および自動補正方法
JP7384653B2 (ja) ロボットの位置を制御するロボット装置の制御装置
JP6896824B2 (ja) ロボット装置、ロボットシステム、ロボット装置の制御方法、ロボット装置を用いた物品の製造方法、情報処理装置、情報処理方法、制御プログラム及び記録媒体
US20230191611A1 (en) Robot system

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021548903

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

Country of ref document: EP

Kind code of ref document: A1