WO2021124760A1 - ロボット、ロボットシステム及び制御方法 - Google Patents

ロボット、ロボットシステム及び制御方法 Download PDF

Info

Publication number
WO2021124760A1
WO2021124760A1 PCT/JP2020/042678 JP2020042678W WO2021124760A1 WO 2021124760 A1 WO2021124760 A1 WO 2021124760A1 JP 2020042678 W JP2020042678 W JP 2020042678W WO 2021124760 A1 WO2021124760 A1 WO 2021124760A1
Authority
WO
WIPO (PCT)
Prior art keywords
work
arm
camera
axis
swivel
Prior art date
Application number
PCT/JP2020/042678
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 CN202080079344.XA priority Critical patent/CN114728420A/zh
Priority to JP2021565378A priority patent/JP7399981B2/ja
Publication of WO2021124760A1 publication Critical patent/WO2021124760A1/ja

Links

Images

Classifications

    • 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

Definitions

  • This disclosure relates to robots, robot systems and control methods.
  • Patent Document 1 includes a work table for supporting the work, a robot arm for performing work on the work, and a camera installed above the work table, and the position and posture of the work are based on an image acquired from the camera.
  • a robot system that identifies is disclosed.
  • the present disclosure provides a robot that is effective in achieving both effective utilization of camera images for robot control and simplification of system configuration.
  • the robot according to one aspect of the present disclosure is fixed to a base, a swivel portion that swivels with respect to the base, an articulated arm that is connected to the swivel portion and changes the position and posture of a work tool, and a swivel portion.
  • the camera is equipped with a camera, and the range of movement of the tool by the articulated arm and the field of view of the camera overlap.
  • the robot system includes the robot, a command generation unit that generates an operation command based on an image captured by the camera of the work, and a first work by a tool on the work based on the operation command. It includes an arm control unit that controls an articulated arm to execute.
  • a control method includes a base, a swivel portion that swivels with respect to the base, and an articulated arm that is connected to the swivel portion and changes the position and orientation of a working tool.
  • An image of the work placed in the work area around the base of the robot is acquired from a camera provided in the swivel part, and an operation command is generated based on the image, and a tool is used based on the operation command. It includes controlling the articulated arm to perform the first task on the work.
  • a robot that is effective in achieving both effective utilization of camera images for robot control and simplification of system configuration is provided.
  • the robot system 1 shown in FIG. 1 is a system that executes a predetermined work on a work object (hereinafter, referred to as “work”) in a product production line.
  • work a work object
  • Specific examples of the work include, but are not limited to, pick-and-place work in which the work is picked up, transported to a predetermined transfer target position and posture, and dropped off.
  • Other examples of the work include a work of welding a work to another work, a work of fastening the work to another work with bolts or the like, a work of polishing the work, and the like.
  • the robot system 1 includes a robot 10 and a controller 100.
  • the robot 10 is a so-called vertical articulated industrial robot, and includes a base 11, a swivel portion 12, an articulated arm 20, actuators 71, 72, 73, 74, 75, 76, 77, and a tool 30. , And a camera 40.
  • the base 11 is fixed on a robot support 3 located in the vicinity of the work area 5.
  • the base 11 may be fixed on an AGV (Automated Guided Vehicle).
  • the swivel portion 12 is provided above the base portion 11.
  • the swivel portion 12 swivels with respect to the base portion 11. For example, the swivel portion 12 swivels around the vertical axis 51.
  • the articulated arm 20 is connected to the swivel portion 12 and changes the position and posture of the work tool 30.
  • the articulated arm 20 has 6 or more independent degrees of freedom.
  • the articulated arm 20 is a 6-axis serial link type arm, and has a first arm 21, a second arm 22, a third arm 23, and a tool holding portion 24.
  • the first arm 21 is connected to the swivel portion 12 and swings around the axis 52 passing through the connecting portion between the first arm 21 and the swivel portion 12.
  • the axis 52 (first axis) intersects (for example, orthogonally) the turning center axis (the axis 51) of the turning portion 12.
  • the intersection here also includes a twisting relationship like a so-called grade separation.
  • the first arm 21 has an arm base 25 and a swivel arm 26.
  • the arm base 25 is connected to the swivel portion 12 and is along an axis 53 that intersects (for example, is orthogonal to) the axis 52.
  • the swivel arm 26 is connected to the tip of the arm base 25, is along the axis 53, and swivels around the axis 53.
  • the second arm 22 is connected to the tip of the first arm 21, turns around the axis 53 (second axis) along the first arm 21, and intersects (for example, orthogonally) the axis 53 with the axis 54 (third). Swing around (axis).
  • the second arm 22 is connected to the tip of the swivel arm 26 and swings around an axis 54 passing through the connecting portion between the second arm 22 and the swivel arm 26. Further, the second arm 22 swivels around the axis 53 together with the swivel arm 26.
  • the second arm 22 has an arm base 27 and a swivel arm 28.
  • the arm base 27 is connected to the tip of the swivel arm 26 and is along an axis 55 that intersects (for example, is orthogonal to) the axis 54.
  • the swivel arm 28 is connected to the tip of the arm base 27, is along the axis 55, and swivels around the axis 55.
  • the third arm 23 is connected to the tip of the second arm 22, turns around the axis 55 (fourth axis) along the second arm 22, and intersects (for example, orthogonally) the axis 55 (for example, orthogonal) with the axis 56 (fifth). Swing around (axis).
  • the third arm 23 is connected to the tip of the swivel arm 28 and swings around an axis 56 passing through the connecting portion between the third arm 23 and the swivel arm 28. Further, the third arm 23 swivels around the axis 55 together with the swivel arm 28.
  • the third arm 23 is along an axis 57 that intersects (for example, is orthogonal to) the axis 56.
  • the tool holding portion 24 is provided at the tip of the third arm 23, holds the tool 30, and turns around the axis 57 (sixth axis) along the third arm 23.
  • the robot 10 includes a joint 61 that connects the base 11 and the swivel portion 12, a joint 62 that connects the swivel portion 12 and the arm base 25, and a joint 63 that connects the arm base 25 and the swivel arm 26.
  • a joint 64 that connects the swivel arm 26 and the arm base 27, a joint 65 that connects the arm base 27 and the swivel arm 28, a joint 66 that connects the swivel arm 28 and the third arm 23, and a third. It has a joint 67 that connects the arm 23 and the tool holding portion 24.
  • Actuators 71, 72, 73, 74, 75, 76, 77 include, for example, an electric motor and a speed reducer, and drive joints 61, 62, 63, 64, 65, 66, 67, respectively.
  • the actuator 71 is built in the base 11 (for example, housed in the outer shell 81 of the base 11), and the swivel portion 12 is swiveled around the axis 51.
  • the actuator 72 is built in the swivel portion 12 (for example, housed in the outer shell 82 of the swivel portion 12), and swings the arm base 25 around the axis 52.
  • the actuator 73 is built in the arm base 25 (for example, housed in the outer shell 83 of the arm base 25), and swivels the swivel arm 26 around the axis 53.
  • the actuator 74 is built in the swivel arm 26 (for example, housed in the outer shell 84 of the swivel arm 26), and swings the arm base 27 around the axis 54.
  • the actuator 75 is built in the arm base 27 (for example, housed in the outer shell 85 of the arm base 27), and swivels the swivel arm 28 around the axis 55.
  • the actuator 76 is built in the swivel arm 28 (for example, housed in the outer shell 86 of the swivel arm 28), and swings the third arm 23 around the axis 56.
  • the actuator 77 is built in the third arm 23 (for example, housed in the outer shell 87 of the third arm 23), and the tool holding portion 24 is swiveled around the axis 57.
  • the tool 30 acts on the work W in the work performed by the robot 10 on the work W.
  • Specific examples of the tool 30 include a suction nozzle that holds the work W by suction, a hand that holds the work W by grasping it, and the like.
  • Other examples of the tool 30 include welding torches, screw tightening tools (eg electric screwdrivers), polishing tools (eg grinders) and the like.
  • the camera 40 is fixed to the turning portion and photographs the work area 5.
  • the camera 40 has an image pickup device such as a CCD (Chaged-Coupled Devices) or CMOS (Complementary Metal-Oxide-Semiconductor) sensor, and an optical system for forming an image of the field of view 41 on the image pickup device.
  • the camera 40 may be a camera that acquires a two-dimensional image (for example, a color image or a monochrome image) showing the brightness, color tone, etc. of the imaging target portion for each pixel, or indicates the distance to the imaging target portion for each pixel. It may be a ToF (Time-of-Flight) camera that acquires a range image.
  • the camera 40 may be a camera that acquires both a two-dimensional image and a distance image.
  • the swivel coordinate system illustrated in FIG. 1 has an X-axis, a Y-axis, and a Z-axis.
  • the Z-axis is a coordinate axis that goes vertically upward.
  • the Y-axis is a coordinate axis along the axis 52.
  • the X-axis is a coordinate axis perpendicular to the Y-axis and the Z-axis.
  • the origin of the swivel coordinate system is located at the intersection of the axis 52 and the reference plane 43 (see FIG. 2) described later.
  • the positive direction of the X-axis is referred to as the front of the robot 10.
  • the camera coordinate system illustrated in FIG. 1 has a CX axis, a CY axis, and a CZ axis.
  • the CX axis is a coordinate axis along the optical axis 42 at the center of the field of view 41, and the direction away from the camera 40 is the positive direction.
  • the CZ axis is a coordinate axis whose positive direction is above the image imaged on the image sensor.
  • the CY axis is a coordinate axis perpendicular to the CX axis and the CZ axis.
  • the camera 40 may be built in the swivel portion 12 (for example, housed in the outer shell 82).
  • the camera 40 is arranged in front of the actuator 72 in the outer shell 82.
  • a window 82a for imaging is formed in the front portion of the outer shell 82, and the camera 40 captures an image obliquely downward in front of the swivel portion 12 through the window 82a.
  • the arrangement of the camera 40 in the turning portion 12 is set so that the movable range 31 of the tool 30 by the articulated arm 20 and the field of view 41 of the camera 40 overlap.
  • the arrangement of the camera 40 is set so that the movable range 31 and the field of view 41 overlap in the work area 5.
  • the camera 40 is fixed to the swivel portion 12 so that the optical axis 42 is along the reference surface 43 (see FIG. 2) that intersects (for example, is orthogonal to) the axis 52.
  • the camera 40 may be fixed to the swivel portion 12 so that the optical axis 42 faces diagonally downward on the reference surface 43.
  • the camera 40 is fixed to the swivel portion 12 so that the CX axis (optical axis 42) faces diagonally downward.
  • the CX axis is perpendicular to the Y axis, and the positive direction of the CX axis is toward the positive direction of the X axis and the negative direction of the Z axis.
  • the angle formed by the CX axis and the X axis around the Y axis is, for example, 30 to 60 degrees.
  • FIG. 2 is a front view of the robot 10 as viewed from the positive direction of the X-axis.
  • the movable range A1 of the first arm 21 may be separated from the reference surface 43 of the camera 40 in the direction along the Y axis (axis line 52).
  • the movable range A1 is offset in the negative direction of the Y axis with respect to the reference surface 43.
  • the camera 40 is located within the movable range of the first arm 21, so that the movable angle of the first arm 21 is sufficiently set. In order to secure it, it is necessary to arrange the axis 52 sufficiently above the camera 40. Therefore, the articulated arm 20 becomes large. On the other hand, if the arrangement height of the camera 40 is lowered in order to suppress the increase in size of the articulated arm 20, the imaging range by the camera 40 becomes narrow. As described above, it is difficult to achieve both space saving of the articulated arm 20 and widening of the imaging range of the camera 40.
  • the arrangement height of the camera 40 is increased without affecting the movable range of the first arm 21, and the camera 40 is imaged. It is possible to widen the range.
  • the camera 40 is located below the axis 52, but the camera 40 can also be located above the axis 52.
  • the movable range A2 of the second arm 22 may be separated from the first arm 21 in the direction along the axis 54. Further, the movable range A3 of the third arm 23 may be separated from the second arm 22 in the direction along the axis 56.
  • the direction in which the movable range A2 of the second arm 22 separates from the first arm 21 along the axis 54 is referred to as the “offset direction of the second arm 22”.
  • the direction in which the movable range A3 of the third arm 23 separates from the second arm 22 along the axis 56 is referred to as the “offset direction of the third arm 23”.
  • FIG. 2 shows a state in which the offset direction of the second arm 22 and the offset direction of the third arm 23 are both oriented in the positive direction of the Y axis.
  • the movable range A2 of the second arm 22 may overlap with the reference surface 43.
  • the movable range A3 of the third arm 23 may be separated from the reference surface 43.
  • the robot system 1 may further include a support portion 2 that supports the work W in the work area 5 around the base portion 11.
  • the upper surface 2a of the support portion 2 may be located below the swivel portion 12, or may be located below the base portion 11.
  • the controller 100 controls the robot 10. For example, the controller 100 acquires an image of the work W arranged in the work area 5 from the camera 40, generates an operation command based on the image, and works the first work by the tool 30 based on the operation command. It is configured to control the articulated arm 20 to perform for W and to perform.
  • the controller 100 has an image processing unit 112, a command generation unit 113, an arm control unit 114, and a turning control unit 111 as a functional configuration (hereinafter, referred to as “functional block”).
  • the image processing unit 112 calculates the position and orientation of the work W in the three-dimensional space based on the captured image of the work W (for example, the work W arranged on the support portion 2) by the camera 40. For example, the image processing unit 112 calculates the position and orientation of the work W in the camera coordinate system based on the shape and size of the work W in the captured image and the three-dimensional shape and size of the known work W, and the calculation result.
  • the position and orientation of the work W in the turning coordinate system are calculated by performing coordinate transformation on.
  • the robot 10 may be provided with two cameras 40 for stereoscopic viewing.
  • the image processing unit 112 may calculate the position and orientation of the work W in the camera coordinate system based on the images captured by the work W by the two cameras 40.
  • the command generation unit 113 generates an operation command based on an image captured by the camera 40 of the work W (for example, the work W arranged on the support unit 2).
  • the operation command includes, for example, a plurality of commands in a time series.
  • Each instruction includes at least the target position and orientation of the tool 30.
  • the command generation unit 113 generates an operation command based on the position and orientation of the work W calculated by the image processing unit 112.
  • the command generation unit 113 uses the tool 30 for holding the work W based on the position and orientation of the work W calculated by the image processing unit 112.
  • the target position and target posture (hereinafter referred to as “holding position and posture”) are calculated, and an operation command is calculated so as to displace the tool 30 from the current position and posture to the holding position and posture. Further, the command generation unit 113 calculates an operation command so as to displace the tool 30 holding the work W at the holding position and posture to a predetermined lifting position and posture.
  • the arm control unit 114 controls the articulated arm 20 so as to execute the first work by the tool 30 on the work W based on the operation command. For example, the arm control unit 114 calculates the motion angles of the joints 62, 63, 64, 65, 66, 67 by inverse kinematics calculation so as to move the tool 30 according to the motion command, and the joint 62, according to the calculated motion angles.
  • the actuators 72, 73, 74, 75, 76, 77 are controlled so as to operate 63, 64, 65, 66, 67.
  • the arm control unit 114 operates the tool 30 in conjunction with the displacement of the tool 30 by the articulated arm 20. For example, when the first work is the work of picking up the work W, the arm control unit 114 causes the tool 30 to hold the work W when the tool 30 is arranged at the holding position and posture.
  • the rotation control unit 111 rotates the rotation unit 12 so that the camera 40 faces the work W before the command generation unit 113 generates an operation command, and then rotates the first operation until the articulated arm 20 completes the first operation.
  • the unit 12 is stopped.
  • the controller 100 may further have a work monitoring unit 115.
  • the work monitoring unit 115 detects the irregular state in the first work based on the image captured by the camera 40 of the work W during the period when the articulated arm 20 is executing the first work.
  • specific examples of the irregular state include the displacement of the work W while the tool 30 is being moved to the position where the work W is held, and the work W by the tool 30. Poor retention of
  • the command generation unit 113 may modify the operation command based on the image captured by the camera 40 of the work W. For example, when the work monitoring unit 115 detects the displacement of the work W while the tool 30 is being moved to the position where the work W is held, the command generation unit 113 will perform the displacement after the displacement calculated by the image processing unit 112. The operation command is modified based on the position and orientation of the work W.
  • the arm control unit 114 releases the work W from being held by the tool 30, and then the position and orientation of the work W calculated by the image processing unit 112.
  • the command generation unit 113 corrects the operation command based on the above.
  • the arm control unit 114 causes the articulated arm 20 to continue the first operation based on the corrected operation command.
  • the command generation unit 113 performs a second operation based on an image captured by the camera 40 of another work W (for example, another work W on the support portion 2) during the period in which the articulated arm 20 is executing the first operation. Further commands may be generated.
  • the image processing unit 112 determines the position and orientation of the second work based on the image captured by the camera 40 of the other work W (second work) during the period when the articulated arm 20 is executing the first work. Is calculated.
  • the command generation unit 113 calculates the second operation command based on the calculation result of the position and orientation of the second work by the image processing unit 112.
  • the arm control unit 114 controls the articulated arm 20 so that after the articulated arm 20 executes the first work, the articulated arm 20 executes the second work by the tool 30 on the second work based on the second operation command. ..
  • the swivel control unit 111 swivels the swivel unit 12 with the articulated arm 20 picking up the work W by the first work, and the arm control unit 114 receives the work W.
  • the articulated arm 20 may be controlled so that the work W being picked up is arranged in the field of view of the camera 40 during at least a part of the period in which the rotation control unit 111 is rotating the rotation unit 12.
  • the controller 100 may further have a holding state monitoring unit 116.
  • the holding state monitoring unit 116 inspects the holding state of the work W by the tool 30 based on the image captured by the camera 40 of the work W being picked up during the period in which the turning control unit 111 is turning the turning unit 12.
  • each functional block described above is a component of the controller 100, the process executed by each functional block corresponds to the process executed by the controller 100.
  • FIG. 3 is a block diagram illustrating the hardware configuration of the controller 100.
  • the controller 100 has a circuit 190.
  • the circuit 190 includes one or more processors 191 and a memory 192, a storage 193, an image processing circuit 194, and a driver circuit 195.
  • the storage 193 has a computer-readable storage medium, such as a non-volatile semiconductor memory.
  • the storage 193 acquires an image of the work W arranged in the work area 5 from the camera 40, generates an operation command based on the image, and performs the first work by the tool 30 based on the operation command. It stores the control of the articulated arm 20 to be executed by the controller 100 and the program to be executed by the controller 100.
  • the memory 192 temporarily stores the program loaded from the storage medium of the storage 193 and the calculation result by the processor 191.
  • the processor 191 constitutes each functional block of the controller 100 by executing the above program in cooperation with the memory 192.
  • the image processing circuit 194 executes image processing in accordance with the request from the processor 191. Specific examples of the image processing include recognition of the shape and size of the work W in the captured image acquired from the camera 40.
  • the driver circuit 195 outputs drive power to the actuators 71, 72, 73, 74, 75, 76, 77 in accordance with a command from the processor 191.
  • circuit 190 is not necessarily limited to the one that configures each function by a program.
  • the circuit 190 may have at least a part of its functions configured by a dedicated logic circuit or an ASIC (Application Specific Integrated Circuit) that integrates the logic circuit.
  • ASIC Application Specific Integrated Circuit
  • This procedure includes a base 11, a swivel portion 12 that swivels with respect to the base portion 11, and an articulated arm 20 that is connected to the swivel portion 12 and changes the position and orientation of the work tool 30.
  • An image of the work W arranged in the work area 5 around the base 11 is acquired from the camera 40 provided in the swivel portion 12, and an operation command is generated based on the image, and based on the operation command.
  • the articulated arm 20 is controlled so as to perform the first work by the tool 30 on the work W.
  • This procedure further generates a second operation command based on an image captured by the camera 40 of another work W (second work) while the articulated arm 20 is executing the first work on the work W.
  • the articulated arm 20 is controlled so that the second work by the tool 30 is executed for the second work based on the second operation command.
  • the controller 100 first executes steps S01, S02, S03, S04, S05, S06, S07, S08, S09, and S11.
  • step S01 the swivel control unit 111 swivels the swivel unit 12 so that the camera 40 faces the plurality of work Ws on the support unit 2, and stops the swivel unit 12 with the camera 40 facing the plurality of work Ws. Let me. After that, the turning control unit 111 keeps the turning unit 12 in the stopped state until the articulated arm 20 completes the pick-and-place work on the plurality of work Ws.
  • step S02 the image processing unit 112 acquires captured images of the plurality of work Ws from the camera 40.
  • step S03 the image processing unit 112 calculates the position and orientation of any work W (hereinafter referred to as “target work”) in the camera coordinate system based on the captured image acquired from the camera 40.
  • step S04 the image processing unit 112 performs coordinate transformation on the position and orientation in the camera coordinate system to calculate the position and orientation of the target work in the turning coordinate system.
  • step S05 the command generation unit 113 calculates an operation command for holding the target work based on the captured image of the target work (hereinafter, referred to as “holding command”). For example, the command generation unit 113 calculates the target position and posture (holding position and posture) of the tool 30 for holding the target work based on the position and posture of the target work calculated by the image processing unit 112.
  • step S06 the arm control unit 114 controls the articulated arm 20 so as to arrange the tool 30 at the holding position and posture based on the holding command.
  • step S07 the image processing unit 112 acquires the captured image of the target work from the camera 40.
  • step S08 the image processing unit 112 calculates the position and orientation of the target work in the camera coordinate system based on the captured image acquired from the camera 40.
  • step S09 the image processing unit 112 performs coordinate transformation on the position and orientation in the camera coordinate system to calculate the position and orientation of the target work in the turning coordinate system.
  • step S11 the work monitoring unit 115 confirms whether the position and posture of the target work are within the normal range. For example, in the work monitoring unit 115, the difference between the position and orientation of the target work calculated by the image processing unit 112 in step S04 and the position and orientation of the target work calculated by the image processing unit 112 in step S09 is within the permissible range. Check if.
  • step S11 If it is determined in step S11 that the position and orientation of the target work is not in the normal range, the controller 100 returns the process to step S03. As a result, the command generation unit 113 corrects the holding command based on the captured image of the target work.
  • the arm control unit 114 controls the articulated arm 20 so as to arrange the tool 30 at the corrected holding position and posture based on the corrected holding command.
  • step S11 When it is determined in step S11 that the position and orientation of the target work are within the normal range, the controller 100 executes steps S12, S13, S14, S15, S16, S17, and S18.
  • step S12 the arm control unit 114 causes the tool 30 to hold the work W.
  • step S13 the command generation unit 113 calculates an operation command (hereinafter referred to as “lift command”) so as to displace the tool 30 holding the target work to a predetermined lifting position and posture.
  • step S14 the arm control unit 114 controls the articulated arm 20 so as to arrange the tool 30 at the lifting position and posture based on the lifting command.
  • step S15 the image processing unit 112 acquires captured images of the plurality of work Ws from the camera 40.
  • step S16 the image processing unit 112 calculates the position and orientation of the target work in the camera coordinate system based on the captured image acquired from the camera 40.
  • step S17 the image processing unit 112 performs coordinate transformation on the position and orientation in the camera coordinate system to calculate the position and orientation of the target work in the turning coordinate system.
  • step S18 the work monitoring unit 115 confirms whether the position and posture of the target work are within the normal range. For example, the work monitoring unit 115 confirms whether the relative position and posture of the target work with respect to the tool 30 are within the normal range.
  • step S19 the controller 100 executes step S19.
  • step S19 the arm control unit 114 releases the holding of the work W by the tool 30.
  • the arm control unit 114 may release the holding of the work W by the tool 30 after controlling the articulated arm 20 so as to return the tool 30 from the lifting position and the posture to the holding position and the posture.
  • the controller 100 returns the process to step S03.
  • the command generation unit 113 corrects the holding command based on the captured image of the target work.
  • the arm control unit 114 controls the articulated arm 20 so as to arrange the tool 30 at the corrected holding position and posture based on the corrected holding command.
  • step S21 the command generation unit 113 commands an operation to displace the tool 30 to the target position and posture (hereinafter, referred to as “release target position and posture”) for arranging the target work at the transport target position and posture. (Hereinafter referred to as "transport command”) is calculated.
  • step S22 the arm control unit 114 controls the articulated arm 20 so as to start the displacement of the tool 30 toward the release target position and posture based on the transport command.
  • step S23 the command generation unit 113 confirms whether the undelivered work W remains among the plurality of work W.
  • step S24 the image processing unit 112 acquires a captured image of the unconveyed work W among the plurality of work Ws from the camera 40.
  • step S25 the image processing unit 112 selects the next target work (second work) from the undelivered work W based on the captured image acquired from the camera 40, and positions the next target work in the camera coordinate system. And calculate the posture.
  • step S26 the image processing unit 112 performs coordinate transformation on the position and orientation in the camera coordinate system to calculate the position and orientation of the next target work in the turning coordinate system.
  • step S27 the command generation unit 113 calculates the holding command (second operation command) of the next target work based on the captured image of the next target work. For example, the command generation unit 113 determines the target position and posture (holding position and posture) of the tool 30 for holding the next target work based on the position and posture of the next target work calculated by the image processing unit 112. calculate.
  • step S28 the arm control unit 114 waits for the tool 30 to reach the release target position and posture.
  • step S29 the arm control unit 114 releases the holding of the target work by the tool 30.
  • the controller 100 returns the process to step S06.
  • the pick-and-place work for the next target work is started based on the holding command (second operation command) calculated in step S27.
  • step S31 the arm control unit 114 waits for the tool 30 to reach the release target position and posture.
  • step S32 the arm control unit 114 releases the holding of the target work by the tool 30. This completes the pick-and-place work for the plurality of work Ws.
  • the robot 10 is made to perform the pick-up work for the work W on the support portion 2, then the swivel portion 12 is swiveled, and then the work W is transported to a predetermined transport target position and posture and dropped off.
  • the procedure to be executed is illustrated. This procedure involves turning the swivel portion 12 with the articulated arm 20 picking up the work W in the first operation, and picking up at least a part of the period during which the swivel control unit 111 swivels the swivel portion 12.
  • the articulated arm 20 is controlled so that the work W inside is arranged in the field of view of the camera 40, and the camera 40 of the work W being picked up during the period when the turning control unit 111 is turning the turning unit 12.
  • the procedure for causing the robot 10 to perform the pick-up operation for the work W is the same as the above-mentioned steps S01 to S19, and thus the description thereof will be omitted.
  • step S18 When it is determined in step S18 that the position and orientation of the target work are within the normal range, the controller 100 executes steps S41, S42, S43, S44, S45, S46, and S47 as shown in FIG.
  • step S41 the turning control unit 111 starts turning the turning unit 12 so that the camera 40 faces the transfer target position of the target work.
  • step S42 the arm control unit 114 controls the articulated arm 20 so that the target work being picked up is arranged in the field of view 41 of the camera 40.
  • step S43 the image processing unit 112 acquires captured images of the plurality of work Ws from the camera 40.
  • step S44 the image processing unit 112 calculates the position and orientation of the target work in the camera coordinate system based on the captured image acquired from the camera 40.
  • step S45 the image processing unit 112 performs coordinate transformation on the position and orientation in the camera coordinate system to calculate the position and orientation of the target work in the turning coordinate system.
  • step S46 the holding state monitoring unit 116 inspects the holding state of the work W by the tool 30 based on the position and posture of the target work calculated in step S45. For example, the holding state monitoring unit 116 calculates the relative position and posture of the work W with respect to the tool 30. If the work W at the time of completion of the pickup is located in the field of view 41 of the camera 40 and the captured image for inspection of the holding state of the work W by the tool 30 can be acquired, the step S42 can be omitted.
  • step S47 the turning control unit 111 confirms whether the turning unit 12 has turned until the camera 40 faces the transport target position of the target work. If it is determined in step S47 that the swivel portion 12 has not swiveled until the camera 40 faces the transport target position of the target work, the controller 100 returns the process to step S43. After that, the inspection of the holding state of the work W by the tool 30 is repeated until the camera 40 faces the transfer target position.
  • step S47 When it is determined in step S47 that the turning unit 12 has turned until the camera 40 faces the transfer target position of the target work, the controller 100 executes steps S48, S51, S52, S53, S54, S55, S56, and S57.
  • step S48 the turning control unit 111 stops the turning of the turning unit 12. After that, the turning control unit 111 keeps the turning unit 12 in the stopped state until the articulated arm 20 completes the work of transporting the target work to the transport target position and posture and dropping it off.
  • step S51 the arm control unit 114 controls the articulated arm 20 so that the target work being picked up is retracted from the field of view 41 of the camera 40.
  • step S52 the image processing unit 112 acquires the captured image of the transport target position from the camera 40. Even if the work W is in the field of view 41 of the camera 40, step S51 can be omitted as long as the captured image of the transport target position can be acquired.
  • step S53 the image processing unit 112 calculates the transport target position and the posture in the camera coordinate system based on the captured image acquired from the camera 40.
  • step S54 the image processing unit 112 performs coordinate transformation on the transport target position and posture in the camera coordinate system to calculate the transport target position and posture in the turning coordinate system.
  • step S55 the transport command is calculated so as to displace the tool 30 to the release target position and posture.
  • step S56 the arm control unit 114 controls the articulated arm 20 so as to displace the tool 30 to the release target position and posture based on the transport command.
  • step S57 the arm control unit 114 releases the holding of the work W by the tool 30. This completes the pick-and-place work of the target work.
  • the robot 10 is connected to the base 11, the swivel portion 12 that swivels with respect to the base 11, and the swivel portion 12, and the articulated arm 20 that changes the position and posture of the work tool 30.
  • the camera 40 fixed to the swivel portion 12 is provided, and the movable range 31 of the tool 30 by the articulated arm 20 and the field of view 41 of the camera 40 overlap.
  • a camera 40 is provided in the turning portion 12.
  • the camera 40 and the robot 10 are integrated, so that the system configuration can be simplified.
  • the movable range of the tool 30 by the articulated arm 20 and the field of view range of the camera 40 overlap.
  • an image including both the tool 30 and the work object (work W) by the tool 30 can be acquired from the camera 40. Therefore, it is easy to effectively utilize the image of the camera 40 for controlling the robot 10. Therefore, the robot 10 is effective in both effectively utilizing the camera image for robot control and simplifying the system configuration.
  • the articulated arm 20 may have 6 or more degrees of freedom. In this case, the position and posture of the tool 30 can be freely adjusted by the articulated arm 20 while acquiring a blur-free image from the camera 40.
  • the articulated arm 20 is connected to the swivel portion 12, and is connected to a first arm 21 that swings around an axis 52 that intersects the swivel center axis of the swivel portion 12, and a tip portion of the first arm 21, and is connected to the first arm.
  • a second arm 22 that swivels around the axis 53 along the axis 21 and swings around the axis 54 that intersects the axis 53, and a second arm 22 that is connected to the tip of the second arm 22 and around the axis 55 along the second arm 22.
  • the articulated arm 20 can be provided with 6 degrees of freedom with a simple configuration.
  • the first arm 21 and the optical axis 42 at the center of the field of view 41 are along the reference surface 43 intersecting the axis 52, and the movable range A1 of the first arm 21 is separated from the reference surface 43 in the direction along the axis 52. You may be. In this case, by removing the base end portion of the first arm 21 from the center of the visual field 41, it is difficult to form a blind spot by the articulated arm 20.
  • the robot system 1 executes the first work by the tool 30 on the work W based on the robot 10, the command generation unit 113 that generates an operation command based on the image captured by the camera 40 of the work W, and the operation command.
  • An arm control unit 114 that controls the articulated arm 20 is provided. In this case, the image of the camera 40 can be effectively used for controlling the robot 10.
  • the robot system 1 further includes a work monitoring unit 115 that detects an irregular state in the first work based on an image captured by the camera 40 of the work W during the period in which the articulated arm 20 is executing the first work. You may. In this case, the image of the camera 40 can be more effectively used for controlling the robot 10.
  • the command generation unit 113 corrects the operation command based on the image captured by the camera 40 of the work W, and the arm control unit 114 corrects the operation command based on the corrected operation command.
  • the first work may be continued on the articulated arm 20. In this case, the image of the camera 40 can be more effectively used for controlling the robot 10.
  • the command generation unit 113 further generates a second operation command based on an image captured by the camera 40 of another work W (second work) during the period in which the articulated arm 20 is executing the first work, and the arm
  • the control unit 114 may control the articulated arm 20 so as to execute the second work by the tool 30 on the second work based on the second operation command.
  • the work time for the first work and the second work can be shortened by acquiring the image of the second work during the execution of the first work.
  • the robot system 1 rotates the swivel unit 12 so that the camera 40 faces the work W before the command generation unit 113 generates an operation command, and then the swivel unit until the first work is completed by the articulated arm 20.
  • a turning control unit 111 for stopping the 12 may be further provided. In this case, a blur-free image can be acquired from the camera 40 even during the first operation. Therefore, the image of the camera 40 can be more effectively used for controlling the robot 10.
  • the first work is a work of picking up the work W
  • the swivel control unit 111 swivels the swivel unit 12 with the articulated arm 20 picking up the work W by the first work, and the arm control unit 114 swivels.
  • the articulated arm 20 may be controlled so that the work W being picked up is arranged in the field of view 41 of the camera 40 during at least a part of the period in which the control unit 111 is rotating the turning unit 12.
  • the image of the camera 40 is more effectively used for controlling the robot 10 by utilizing the fact that the rotation of the turning unit 12 does not affect the relative positional relationship between the work W during pickup and the camera 40. be able to.
  • the robot system 1 inspects the holding state of the work W by the tool 30 based on the image captured by the camera 40 of the work W being picked up during the period in which the turning control unit 111 is turning the turning unit 12.
  • a portion 116 may be further provided. In this case, the image acquired from the camera 40 during turning can be further effectively utilized.
  • the robot system 1 further includes an image processing unit 112 that calculates the position and orientation of the work W in the three-dimensional space based on the image captured by the work W by the camera 40, and the command generation unit 113 includes the image processing unit 112.
  • An operation command may be generated based on the calculated position and orientation of the work W.
  • the image from the camera 40 can be more effectively used for controlling the robot 10.
  • the swivel portion 12 may be provided on the base portion 11, and the camera 40 may be provided on the swivel portion 12 so that the optical axis 42 at the center of the field of view 41 faces diagonally downward. In this case, since the camera 40 looks at the work W from diagonally above, it is easy to acquire an image including both the tool 30 and the work W.
  • the robot system 1 further includes a support portion 2 that supports the work W around the base portion 11, and the upper surface 2a of the support portion 2 may be located below the swivel portion 12. In this case, it is easier to acquire an image including both the tool 30 and the work W.

Landscapes

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

Abstract

ロボット(10)は、基部(11)と、基部(11)に対して旋回する旋回部(12)と、旋回部(12)に連結され、作業用のツール(30)の位置及び姿勢を変更する多関節アーム(20)と、旋回部(12)に固定されたカメラ(40)と、を備え、多関節アーム(20)によるツール(30)の可動範囲(31)と、カメラ(40)の視野(41)とが重複している。

Description

ロボット、ロボットシステム及び制御方法
 本開示は、ロボット、ロボットシステム及び制御方法に関する。
 特許文献1には、ワークを支持する作業台と、ワークに対する作業を行うロボットアームと、作業台の上方に設置されたカメラと、を備え、カメラから取得した画像に基づいてワークの位置及び姿勢を特定するロボットシステムが開示されている。
特開2014-180720号公報
 本開示は、カメラ画像のロボット制御への有効活用と、システム構成の簡素化との両立に有効なロボットを提供する。
 本開示の一側面に係るロボットは、基部と、基部に対して旋回する旋回部と、旋回部に連結され、作業用のツールの位置及び姿勢を変更する多関節アームと、旋回部に固定されたカメラと、を備え、多関節アームによるツールの可動範囲と、カメラの視野とが重複している。
 本開示の他の側面に係るロボットシステムは、上記ロボットと、ワークのカメラによる撮像画像に基づいて動作指令を生成する指令生成部と、動作指令に基づいて、ツールによる第1作業をワークに対し実行するように多関節アームを制御するアーム制御部と、を備える。
 本開示の更に他の側面に係る制御方法は、基部と、基部に対して旋回する旋回部と、旋回部に連結され、作業用のツールの位置及び姿勢を変更する多関節アームと、を備えるロボットの、基部の周囲の作業エリアに配置されたワークの画像を、旋回部に設けられたカメラから取得し、当該画像に基づいて動作指令を生成することと、動作指令に基づいて、ツールによる第1作業をワークに対し実行するように多関節アームを制御することと、を含む。
 本開示によれば、カメラ画像のロボット制御への有効活用と、システム構成の簡素化との両立に有効なロボットを提供する。
ロボットシステムの概略構成を示す模式図である。 図1のロボットシステムの正面図である。 コントローラのハードウェア構成を例示するブロック図である。 ワークの搬送制御手順を例示するフローチャートである。 ワークの搬送制御手順を例示するフローチャートである。 ワークの搬送制御手順の変形例を示すフローチャートである。
 以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
〔ロボットシステム〕
 図1に示すロボットシステム1は、製品の生産ラインにおいて、作業対象物(以下、「ワーク」という。)に対し所定の作業を実行するシステムである。作業の具体例としては、ワークをピックアップし、所定の搬送目標位置及び姿勢まで搬送してドロップオフするピックアンドプレース作業が挙げられるが、これに限定されない。作業の他の例としては、ワークを他のワークに溶接する作業、ワークを他のワークにボルト等により締結する作業、ワークに研磨等の加工を施す作業等が挙げられる。図1に示すように、ロボットシステム1は、ロボット10と、コントローラ100とを有する。
 ロボット10は、所謂垂直多関節型の産業用ロボットであり、基部11と、旋回部12と、多関節アーム20と、アクチュエータ71,72,73,74,75,76,77と、ツール30と、カメラ40とを有する。
 基部11は、作業エリア5の近傍に位置するロボット支持台3の上に固定されている。基部11は、AGV(Automated Guided Vehicle)上に固定されていてもよい。旋回部12は、基部11の上に設けられている。旋回部12は、基部11に対して旋回する。例えば旋回部12は、鉛直な軸線51まわりに旋回する。
 多関節アーム20は、旋回部12に連結され、作業用のツール30の位置及び姿勢を変更する。多関節アーム20は、6以上の独立した自由度を有する。例えば多関節アーム20は、6軸のシリアルリンク型のアームであり、第1アーム21と、第2アーム22と、第3アーム23と、ツール保持部24とを有する。
 第1アーム21は、旋回部12に連結され、第1アーム21と旋回部12との連結部を通る軸線52まわりに揺動する。軸線52(第1軸線)は、旋回部12の旋回中心軸線(上記軸線51)に交差(例えば直交)している。ここでの交差は、所謂立体交差のようにねじれの関係も含む。以下においても同様である。第1アーム21は、アーム基部25と旋回アーム26とを有する。アーム基部25は、旋回部12に連結され、軸線52に交差(例えば直交)する軸線53に沿っている。旋回アーム26は、アーム基部25の先端部に連結され、軸線53に沿っており、軸線53まわりに旋回する。
 第2アーム22は、第1アーム21の先端部に連結され、第1アーム21に沿った軸線53(第2軸線)まわりに旋回し、軸線53に交差(例えば直交)する軸線54(第3軸線)まわりに揺動する。例えば第2アーム22は、旋回アーム26の先端部に連結されており、第2アーム22と旋回アーム26との連結部を通る軸線54まわりに揺動する。また、第2アーム22は、旋回アーム26と共に軸線53まわりに旋回する。第2アーム22は、アーム基部27と旋回アーム28とを有する。アーム基部27は、旋回アーム26の先端部に連結され、軸線54に交差(例えば直交)する軸線55に沿っている。旋回アーム28は、アーム基部27の先端部に連結され、軸線55に沿っており、軸線55まわりに旋回する。
 第3アーム23は、第2アーム22の先端部に連結され、第2アーム22に沿った軸線55(第4軸線)まわりに旋回し、軸線55に交差(例えば直交)する軸線56(第5軸線)まわりに揺動する。例えば第3アーム23は、旋回アーム28の先端部に連結されており、第3アーム23と旋回アーム28との連結部を通る軸線56まわりに揺動する。また、第3アーム23は、旋回アーム28と共に軸線55まわりに旋回する。第3アーム23は、軸線56に交差(例えば直交)する軸線57に沿っている。
 ツール保持部24は、第3アーム23の先端部に設けられ、ツール30を保持し、第3アーム23に沿った軸線57(第6軸線)まわりに旋回する。
 このように、ロボット10は、基部11と旋回部12とを連結する関節61と、旋回部12とアーム基部25とを連結する関節62と、アーム基部25と旋回アーム26とを連結する関節63と、旋回アーム26とアーム基部27とを連結する関節64と、アーム基部27と旋回アーム28とを連結する関節65と、旋回アーム28と第3アーム23とを連結する関節66と、第3アーム23とツール保持部24とを連結する関節67とを有する。
 アクチュエータ71,72,73,74,75,76,77は、例えば電動モータ及び減速機を含み、関節61,62,63,64,65,66,67をそれぞれ駆動する。例えばアクチュエータ71は、基部11に内蔵(例えば基部11の外殻81内に収容)されており、軸線51まわりに旋回部12を旋回させる。アクチュエータ72は、旋回部12に内蔵(例えば旋回部12の外殻82内に収容)されており、軸線52まわりにアーム基部25を揺動させる。アクチュエータ73は、アーム基部25に内蔵(例えばアーム基部25の外殻83内に収容)されており、軸線53まわりに旋回アーム26を旋回させる。アクチュエータ74は、旋回アーム26に内蔵(例えば旋回アーム26の外殻84内に収容)されており、軸線54まわりにアーム基部27を揺動させる。アクチュエータ75は、アーム基部27に内蔵(例えばアーム基部27の外殻85内に収容)されており、軸線55まわりに旋回アーム28を旋回させる。アクチュエータ76は、旋回アーム28に内蔵(例えば旋回アーム28の外殻86内に収容)されており、軸線56まわりに第3アーム23を揺動させる。アクチュエータ77は、第3アーム23に内蔵(例えば第3アーム23の外殻87内に収容)されており、軸線57まわりにツール保持部24を旋回させる。
 ツール30は、ロボット10がワークWに対し実行する作業においてワークWに作用する。ツール30の具体例としては、ワークWを吸着により保持する吸着ノズル、ワークWを掴むことにより保持するハンド等が挙げられる。ツール30の他の例としては、溶接トーチ、ねじ締めツール(例えば電動ドライバ)、及び研磨ツール(例えばグラインダー)等が挙げられる。
 カメラ40は、旋回部に固定されており、作業エリア5を撮影する。カメラ40は、CCD(Charged-Coupled Devices)又はCMOS(ComplementaryMetal-Oxide-Semiconductor)センサ等の撮像素子と、視野41の画像を撮像素子に結像させる光学系とを有する。カメラ40は、撮影対象部の輝度、色調等を画素ごとに示す2次元画像(例えばカラー画像、モノクロ画像)を取得するカメラであってもよいし、撮像対象部までの距離を画素ごとに示す距離画像を取得するToF(Time-of-Flight)カメラであってもよい。カメラ40は、2次元画像及び距離画像の両方を取得するカメラであってもよい。
 カメラ40は、カメラ40を基準とする座標系(以下、「カメラ座標系」という。)と、旋回部12を基準とする座標系(以下、「旋回座標系」という。)との関係が不変となるように旋回部12に固定されている。図1に例示する旋回座標系は、X軸、Y軸及びZ軸を有する。Z軸は、鉛直上方に向かう座標軸である。Y軸は軸線52に沿った座標軸である。X軸は、Y軸及びZ軸に垂直な座標軸である。旋回座標系の原点は、軸線52と、後述の基準面43(図2参照)との交点に位置する。以下においては、X軸正方向をロボット10の前方という。図1に例示するカメラ座標系は、CX軸、CY軸及びCZ軸を有する。CX軸は、視野41の中心の光軸42に沿った座標軸であり、カメラ40から遠ざかる方向を正方向とする。CZ軸は、撮像素子に結像する画像の上方を正方向とする座標軸である。CY軸は、CX軸及びCZ軸に垂直な座標軸である。
 カメラ40は、旋回部12に内蔵(例えば外殻82内に収容)されていてもよい。例えばカメラ40は、外殻82内において、アクチュエータ72の前方に配置されている。外殻82の前部には、撮像用の窓82a(図2参照)が形成されており、カメラ40は、窓82aを介して旋回部12の前斜め下方の画像を撮像する。
 旋回部12におけるカメラ40の配置は、多関節アーム20によるツール30の可動範囲31と、カメラ40の視野41とが重複するように設定されている。例えば、カメラ40の配置は、可動範囲31と視野41とが作業エリア5において重複するように設定されている。
 例えば、カメラ40は、軸線52に交差(例えば直交)する基準面43(図2参照)に光軸42が沿うように旋回部12に固定されている。カメラ40は、基準面43において光軸42が斜め下方に向くように旋回部12に固定されていてもよい。一例として、カメラ40は、CX軸(光軸42)が斜め下方に向くように旋回部12に固定されている。具体的に、CX軸は、Y軸に垂直であり、CX軸の正方向は、X軸正方向及びZ軸負方向に向かっている。Y軸まわりでCX軸とX軸とのなす角は、例えば30~60度である。
 図2は、ロボット10をX軸正方向から見た正面図である。図2に示すように、Y軸(軸線52)に沿う方向において、第1アーム21の可動範囲A1は、カメラ40の基準面43から離れていてもよい。例えば可動範囲A1は、基準面43に対してY軸負方向にオフセットしている。
 仮に、軸線52に沿う方向において可動範囲A1と基準面43とが一致する場合、第1アーム21の可動範囲内にカメラ40が位置することとなるので、第1アーム21の可動角を十分に確保するためには、軸線52をカメラ40よりも十分上方に配置する必要がある。このため、多関節アーム20が大型化することとなる。一方、多関節アーム20の大型化を抑制するためにカメラ40の配置高さを低くすると、カメラ40による撮像範囲が狭くなる。このように、多関節アーム20の省スペース化と、カメラ40の撮像範囲の広域化との両立が困難となる。これに対し、軸線52に沿う方向において可動範囲A1が基準面43から離れた構成によって、第1アーム21の可動範囲に影響を及ぼすことなくカメラ40の配置高さを高くし、カメラ40の撮像範囲の広域化を図ることが可能となっている。図1において、カメラ40は、軸線52よりも下方に位置しているが、カメラ40を軸線52よりも上方に配置することも可能である。
 なお、軸線54に沿う方向において、第2アーム22の可動範囲A2が第1アーム21から離れていてもよい。更に、軸線56に沿う方向において、第3アーム23の可動範囲A3が第2アーム22から離れていてもよい。以下、軸線54に沿って第2アーム22の可動範囲A2が第1アーム21から離れる方向を、「第2アーム22のオフセット方向」という。軸線56に沿って第3アーム23の可動範囲A3が第2アーム22から離れる方向を、「第3アーム23のオフセット方向」という。
 図2は、第2アーム22のオフセット方向及び第3アーム23のオフセット方向が、いずれもY軸正方向に向けられた状態を示している。この状態において、第2アーム22の可動範囲A2は、基準面43と重なっていてもよい。また、第3アーム23の可動範囲A3は、基準面43から離れていてもよい。
 図1に戻り、ロボットシステム1は、基部11の周囲の作業エリア5においてワークWを支持する支持部2を更に備えてもよい。支持部2の上面2aは、旋回部12よりも下に位置していてもよく、基部11よりも下に位置していてもよい。
 コントローラ100は、ロボット10を制御する。例えばコントローラ100は、作業エリア5に配置されたワークWの画像をカメラ40から取得し、当該画像に基づいて動作指令を生成することと、動作指令に基づいて、ツール30による第1作業をワークWに対し実行するように多関節アーム20を制御することと、を実行するように構成されている。例えばコントローラ100は、機能上の構成(以下、「機能ブロック」という。)として、画像処理部112と、指令生成部113と、アーム制御部114と、旋回制御部111とを有する。
 画像処理部112は、カメラ40によるワークW(例えば支持部2上に配置されたワークW)の撮像画像に基づいて3次元空間におけるワークWの位置及び姿勢を算出する。例えば画像処理部112は、撮像画像内におけるワークWの形状及び大きさと、既知のワークWの3次元形状及び大きさとに基づいて、カメラ座標系におけるワークWの位置及び姿勢を算出し、算出結果に座標変換を施すことで旋回座標系におけるワークWの位置及び姿勢を算出する。
 なお、ロボット10は、立体視用に2つのカメラ40を備えていてもよい。この場合、画像処理部112は、2つのカメラ40によるワークWの撮像画像に基づいてカメラ座標系におけるワークWの位置及び姿勢を算出してもよい。
 指令生成部113は、ワークW(例えば支持部2上に配置されたワークW)のカメラ40による撮像画像に基づいて動作指令を生成する。動作指令は、例えば時系列の複数の命令を含む。各命令は、少なくともツール30の目標位置及び姿勢を含む。例えば指令生成部113は、画像処理部112が算出したワークWの位置及び姿勢に基づいて動作指令を生成する。
 一例として、ワークWをピックアップするための動作指令を生成する場合、指令生成部113は、画像処理部112が算出したワークWの位置及び姿勢に基づいて、当該ワークWを保持するためのツール30の目標位置及び目標姿勢(以下、「保持位置及び姿勢」という。)を算出し、ツール30を現在位置及び姿勢から保持位置及び姿勢まで変位させるように動作指令を算出する。更に、指令生成部113は、保持位置及び姿勢にてワークWを保持したツール30を、所定の持ち上げ位置及び姿勢まで変位させるように動作指令を算出する。
 アーム制御部114は、動作指令に基づいて、ツール30による第1作業をワークWに対し実行するように多関節アーム20を制御する。例えばアーム制御部114は、動作指令に従ってツール30を移動させるように、逆運動学演算によって関節62,63,64,65,66,67の動作角度を算出し、算出した動作角度に従って関節62,63,64,65,66,67を動作させるようにアクチュエータ72,73,74,75,76,77を制御する。
 また、アーム制御部114は、多関節アーム20によるツール30の変位に連動して、ツール30を動作させる。例えば、第1作業がワークWをピックアップする作業である場合、アーム制御部114は、保持位置及び姿勢にツール30が配置された場合に、ツール30にワークWを保持させる。
 旋回制御部111は、指令生成部113が動作指令を生成する前に、カメラ40がワークWに向くように旋回部12を旋回させ、その後、第1作業を多関節アーム20が完了させるまで旋回部12を停止させる。
 コントローラ100は、作業監視部115を更に有してもよい。作業監視部115は、多関節アーム20が第1作業を実行している期間中におけるワークWのカメラ40による撮像画像に基づいて第1作業におけるイレギュラー状態を検知する。第1作業がワークWをピックアップする作業である場合、イレギュラー状態の具体例としては、ワークWを保持する位置までツール30を移動させている最中におけるワークWの変位、ツール30によるワークWの保持不良等が挙げられる。
 作業監視部115がイレギュラー状態を検知した場合に、指令生成部113は、ワークWのカメラ40による撮像画像に基づいて動作指令を修正してもよい。例えば、ワークWを保持する位置までツール30を移動させている最中におけるワークWの変位が作業監視部115により検知された場合、指令生成部113は、画像処理部112が算出した変位後のワークWの位置及び姿勢に基づいて動作指令を修正する。ツール30によるワークWの保持不良が作業監視部115により検知された場合、アーム制御部114がツール30によるワークWの保持を解除させ、その後、画像処理部112が算出したワークWの位置及び姿勢に基づいて指令生成部113が動作指令を修正する。アーム制御部114は、修正後の動作指令に基づいて第1作業を多関節アーム20に継続させる。
 指令生成部113は、第1作業を多関節アーム20が実行している期間中における他のワークW(例えば支持部2上の他のワークW)のカメラ40による撮像画像に基づいて第2動作指令を更に生成してもよい。例えば、第1作業を多関節アーム20が実行している期間中における上記他のワークW(第2ワーク)のカメラ40による撮像画像に基づいて、画像処理部112が第2ワークの位置及び姿勢を算出する。指令生成部113は、画像処理部112による第2ワークの位置及び姿勢の算出結果に基づいて第2動作指令を算出する。アーム制御部114は、第1作業を多関節アーム20が実行した後に、第2動作指令に基づいて、ツール30による第2作業を第2ワークに対し実行するように多関節アーム20を制御する。
 第1作業がワークWをピックアップする作業である場合に、旋回制御部111は、第1作業により多関節アーム20がワークWをピックアップした状態で旋回部12を旋回させ、アーム制御部114は、旋回制御部111が旋回部12を旋回させている期間の少なくとも一部において、ピックアップ中のワークWをカメラ40の視野内に配置するように多関節アーム20を制御してもよい。
 この場合、コントローラ100は、保持状態監視部116を更に有してもよい。保持状態監視部116は、旋回制御部111が旋回部12を旋回させている期間中におけるピックアップ中のワークWのカメラ40による撮像画像に基づいて、ツール30によるワークWの保持状態を検査する。
 なお、以上に説明した各機能ブロックは、コントローラ100の構成要素であるから、各機能ブロックが実行する処理は、コントローラ100が実行する処理に相当する。
 図3は、コントローラ100のハードウェア構成を例示するブロック図である。図3に示すように、コントローラ100は、回路190を有する。回路190は、一つ又は複数のプロセッサ191と、メモリ192と、ストレージ193と、画像処理回路194と、ドライバ回路195とを含む。ストレージ193は、例えば不揮発性の半導体メモリ等、コンピュータによって読み取り可能な記憶媒体を有する。ストレージ193は、作業エリア5に配置されたワークWの画像をカメラ40から取得し、当該画像に基づいて動作指令を生成することと、動作指令に基づいて、ツール30による第1作業をワークWに対し実行するように多関節アーム20を制御することと、をコントローラ100に実行させるプログラムを記憶している。
 メモリ192は、ストレージ193の記憶媒体からロードしたプログラム及びプロセッサ191による演算結果を一時的に記憶する。プロセッサ191は、メモリ192と協働して上記プログラムを実行することで、コントローラ100の各機能ブロックを構成する。画像処理回路194は、プロセッサ191からの要求に従って、画像処理を実行する。画像処理の具体例としては、カメラ40から取得した撮像画像におけるワークWの形状及び大きさの認識等が挙げられる。ドライバ回路195は、プロセッサ191からの指令に従って、アクチュエータ71,72,73,74,75,76,77に駆動電力を出力する。
 なお、回路190は、必ずしもプログラムにより各機能を構成するものに限られない。例えば回路190は、専用の論理回路又はこれを集積したASIC(Application Specific Integrated Circuit)により少なくとも一部の機能を構成してもよい。
〔ロボットの制御手順〕
 続いて、制御方法の一例として、コントローラ100が実行するロボット10の制御手順を例示する。この手順は、基部11と、基部11に対して旋回する旋回部12と、旋回部12に連結され、作業用のツール30の位置及び姿勢を変更する多関節アーム20と、を備えるロボット10の、基部11の周囲の作業エリア5に配置されたワークWの画像を、旋回部12に設けられたカメラ40から取得し、当該画像に基づいて動作指令を生成することと、動作指令に基づいて、ツール30による第1作業をワークWに対し実行するように多関節アーム20を制御することと、を含む。
 以下、1つの支持部2上において、複数のワークWに対するピックアンドプレース作業をロボット10に実行させる手順を例示する。この手順は、ワークWに対する第1作業を多関節アーム20が実行している期間中における、他のワークW(第2ワーク)のカメラ40による撮像画像に基づいて、第2動作指令を更に生成することと、第1作業を多関節アーム20が実行した後に、第2動作指令に基づいて、ツール30による第2作業を第2ワークに対し実行するように多関節アーム20を制御することとを含む。
 図4に示すように、コントローラ100は、まずステップS01,S02,S03,S04,S05,S06,S07,S08,S09,S11を実行する。ステップS01では、旋回制御部111が、支持部2上の複数のワークWにカメラ40が向くように旋回部12を旋回させ、複数のワークWにカメラ40が向いた状態で旋回部12を停止させる。以後、旋回制御部111は、複数のワークWに対するピックアンドプレース作業を多関節アーム20が完了させるまで、旋回部12を停止状態に維持する。
 ステップS02では、画像処理部112が、複数のワークWの撮像画像をカメラ40から取得する。ステップS03では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、いずれかのワークW(以下、「ターゲットワーク」という。)のカメラ座標系における位置及び姿勢を算出する。ステップS04では、画像処理部112が、カメラ座標系における位置及び姿勢に座標変換を施して、旋回座標系におけるターゲットワークの位置及び姿勢を算出する。
 ステップS05では、指令生成部113が、ターゲットワークの撮像画像に基づいて、ターゲットワークを保持するための動作指令を算出する(以下、「保持指令」という。)。例えば指令生成部113は、画像処理部112が算出したターゲットワークの位置及び姿勢に基づいて、ターゲットワークを保持するためのツール30の目標位置及び姿勢(上記保持位置及び姿勢)を算出する。ステップS06では、アーム制御部114が、保持指令に基づいて、保持位置及び姿勢にツール30を配置するように多関節アーム20を制御する。
 ステップS07では、画像処理部112が、ターゲットワークの撮像画像をカメラ40から取得する。ステップS08では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、ターゲットワークのカメラ座標系における位置及び姿勢を算出する。ステップS09では、画像処理部112が、カメラ座標系における位置及び姿勢に座標変換を施して、旋回座標系におけるターゲットワークの位置及び姿勢を算出する。
 ステップS11では、ターゲットワークの位置及び姿勢が正常範囲であるかを作業監視部115が確認する。例えば作業監視部115は、ステップS04において画像処理部112が算出したターゲットワークの位置及び姿勢と、ステップS09において画像処理部112が算出したターゲットワークの位置及び姿勢との差異が許容範囲内であるかを確認する。
 ステップS11においてターゲットワークの位置及び姿勢が正常範囲でないと判定した場合、コントローラ100は処理をステップS03に戻す。これにより、指令生成部113が、ターゲットワークの撮像画像に基づき保持指令を修正する。アーム制御部114は、修正後の保持指令に基づいて修正後の保持位置及び姿勢にツール30を配置するように多関節アーム20を制御する。
 ステップS11においてターゲットワークの位置及び姿勢が正常範囲であると判定した場合、コントローラ100は、ステップS12,S13,S14,S15,S16,S17,S18を実行する。ステップS12では、アーム制御部114が、ツール30にワークWを保持させる。
 ステップS13では、指令生成部113が、ターゲットワークを保持したツール30を、所定の持ち上げ位置及び姿勢まで変位させるように動作指令(以下、「持ち上げ指令」という。)を算出する。ステップS14では、アーム制御部114が、持ち上げ指令に基づいて、持ち上げ位置及び姿勢にツール30を配置するように多関節アーム20を制御する。
 ステップS15では、画像処理部112が、複数のワークWの撮像画像をカメラ40から取得する。ステップS16では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、ターゲットワークのカメラ座標系における位置及び姿勢を算出する。ステップS17では、画像処理部112が、カメラ座標系における位置及び姿勢に座標変換を施して、旋回座標系におけるターゲットワークの位置及び姿勢を算出する。
 ステップS18では、ターゲットワークの位置及び姿勢が正常範囲であるかを作業監視部115が確認する。例えば作業監視部115は、ツール30に対するターゲットワークの相対的な位置及び姿勢が正常範囲であるかを確認する。
 ステップS18においてターゲットワークの位置及び姿勢が正常範囲でないと判定した場合、コントローラ100はステップS19を実行する。ステップS19では、アーム制御部114が、ツール30によるワークWの保持を解除させる。アーム制御部114は、ツール30を持ち上げ位置及び姿勢から保持位置及び姿勢に戻すように多関節アーム20を制御した後に、ツール30によるワークWの保持を解除させてもよい。その後、コントローラ100は処理をステップS03に戻す。これにより、指令生成部113が、ターゲットワークの撮像画像に基づき保持指令を修正する。アーム制御部114は、修正後の保持指令に基づいて修正後の保持位置及び姿勢にツール30を配置するように多関節アーム20を制御する。
 ステップS18においてターゲットワークの位置及び姿勢が正常範囲であると判定した場合、コントローラ100は、図5に示すようにステップS21,S22,S23を実行する。ステップS21では、指令生成部113が、ターゲットワークを搬送目標位置及び姿勢に配置するための目標位置及び姿勢(以下、「解放目標位置及び姿勢」という。)までツール30を変位させるように動作指令(以下、「搬送指令」という。)を算出する。ステップS22では、アーム制御部114が、搬送指令に基づいて、解放目標位置及び姿勢に向けたツール30の変位を開始するように多関節アーム20を制御する。ステップS23では、指令生成部113が、複数のワークWのうち未搬送のワークWが残っているかを確認する。
 ステップS23において未搬送のワークWが残っていると判定した場合、コントローラ100は、ステップS24,S25,S26,S27,S28,S29を実行する。ステップS24では、画像処理部112が、複数のワークWのうち未搬送のワークWの撮像画像をカメラ40から取得する。ステップS25では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、未搬送のワークWから次のターゲットワーク(第2ワーク)を選択し、次のターゲットワークのカメラ座標系における位置及び姿勢を算出する。ステップS26では、画像処理部112が、カメラ座標系における位置及び姿勢に座標変換を施して、旋回座標系における次のターゲットワークの位置及び姿勢を算出する。
 ステップS27では、指令生成部113が、次のターゲットワークの撮像画像に基づいて、次のターゲットワークの保持指令(第2動作指令)を算出する。例えば指令生成部113は、画像処理部112が算出した次のターゲットワークの位置及び姿勢に基づいて、次のターゲットワークを保持するためのツール30の目標位置及び姿勢(上記保持位置及び姿勢)を算出する。
 ステップS28では、ツール30が解放目標位置及び姿勢に到達するのをアーム制御部114が待機する。ステップS29では、アーム制御部114が、ツール30によるターゲットワークの保持を解除させる。その後、コントローラ100は処理をステップS06に戻す。これにより、ステップS27において算出された保持指令(第2動作指令)に基づいて、次のターゲットワークに対するピックアンドプレース作業が開始される。
 ステップS23において未搬送のワークWが残っていないと判定した場合、コントローラ100はステップS31,S32を実行する。ステップS31では、ツール30が解放目標位置及び姿勢に到達するのをアーム制御部114が待機する。ステップS32では、アーム制御部114が、ツール30によるターゲットワークの保持を解除させる。以上で複数のワークWに対するピックアンドプレース作業が完了する。
(制御手順の変形例)
 以下、支持部2上においてワークWに対するピックアップ作業をロボット10に実行させ、その後旋回部12を旋回させ、その後ワークWを所定の搬送目標位置及び姿勢まで搬送してドロップオフする作業をロボット10に実行させる手順を例示する。この手順は、第1作業により多関節アーム20がワークWをピックアップした状態で旋回部12を旋回させることと、旋回制御部111が旋回部12を旋回させている期間の少なくとも一部において、ピックアップ中のワークWをカメラ40の視野内に配置するように多関節アーム20を制御することと、旋回制御部111が旋回部12を旋回させている期間中におけるピックアップ中のワークWのカメラ40による撮像画像に基づいて、ツール30によるワークWの保持状態を検査することとを含む。この手順において、ワークWに対するピックアップ作業をロボット10に実行させる手順については、上述したステップS01~S19と同じであるため説明を省略する。
 ステップS18においてターゲットワークの位置及び姿勢が正常範囲であると判定した場合、コントローラ100は、図6に示すようにステップS41,S42,S43,S44,S45,S46,S47を実行する。ステップS41では、旋回制御部111が、ターゲットワークの搬送目標位置にカメラ40が向くように旋回部12を旋回させることを開始する。ステップS42では、アーム制御部114が、ピックアップ中のターゲットワークをカメラ40の視野41内に配置するように多関節アーム20を制御する。
 ステップS43では、画像処理部112が、複数のワークWの撮像画像をカメラ40から取得する。ステップS44では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、ターゲットワークのカメラ座標系における位置及び姿勢を算出する。ステップS45では、画像処理部112が、カメラ座標系における位置及び姿勢に座標変換を施して、旋回座標系におけるターゲットワークの位置及び姿勢を算出する。
 ステップS46では、保持状態監視部116が、ステップS45において算出されたターゲットワークの位置及び姿勢に基づいて、ツール30によるワークWの保持状態を検査する。例えば保持状態監視部116は、ツール30に対するワークWの相対的な位置及び姿勢を算出する。なお、ピックアップの完了時点でのワークWがカメラ40の視野41内に位置し、ツール30によるワークWの保持状態の検査用の撮像画像を取得可能であれば、ステップS42を省略可能である。
 ステップS47では、ターゲットワークの搬送目標位置にカメラ40が向くまで旋回部12が旋回したかを旋回制御部111が確認する。ステップS47においてターゲットワークの搬送目標位置にカメラ40が向くまで旋回部12が旋回していないと判定した場合、コントローラ100は処理をステップS43に戻す。以後、搬送目標位置にカメラ40が向くまでは、ツール30によるワークWの保持状態の検査が繰り返される。
 ステップS47においてターゲットワークの搬送目標位置にカメラ40が向くまで旋回部12が旋回したと判定した場合、コントローラ100は、ステップS48,S51,S52,S53,S54,S55,S56,S57を実行する。ステップS48では、旋回制御部111が、旋回部12の旋回を停止させる。以後、旋回制御部111は、ターゲットワークを搬送目標位置及び姿勢まで搬送してドロップオフする作業を多関節アーム20が完了させるまで、旋回部12を停止状態に維持する。
 ステップS51では、アーム制御部114が、ピックアップ中のターゲットワークをカメラ40の視野41内から退避させるように多関節アーム20を制御する。ステップS52では、画像処理部112が、搬送目標位置の撮像画像をカメラ40から取得する。なお、ワークWがカメラ40の視野41内にあっても、搬送目標位置の撮像画像を取得可能であれば、ステップS51を省略可能である。ステップS53では、画像処理部112が、カメラ40から取得した撮像画像に基づいて、カメラ座標系における搬送目標位置及び姿勢を算出する。ステップS54では、画像処理部112が、カメラ座標系における搬送目標位置及び姿勢に座標変換を施して、旋回座標系における搬送目標位置及び姿勢を算出する。
 ステップS55では、上記解放目標位置及び姿勢までツール30を変位させるように上記搬送指令を算出する。ステップS56では、アーム制御部114が、搬送指令に基づいて、解放目標位置及び姿勢にツール30を変位させるように多関節アーム20を制御する。ステップS57では、アーム制御部114が、ツール30によるワークWの保持を解除させる。以上でターゲットワークのピックアンドプレース作業が完了する。
〔本実施形態の効果〕
 以上に説明したように、ロボット10は、基部11と、基部11に対して旋回する旋回部12と、旋回部12に連結され、作業用のツール30の位置及び姿勢を変更する多関節アーム20と、旋回部12に固定されたカメラ40と、を備え、多関節アーム20によるツール30の可動範囲31と、カメラ40の視野41とが重複している。
 このロボット10では、カメラ40が旋回部12に設けられる。これにより、カメラ40とロボット10とが一体化されることによって、システム構成の簡素化が可能となる。また、多関節アーム20によるツール30の可動範囲と、カメラ40の視野範囲とが重複している。これにより、ツール30と、ツール30による作業対象物(上記ワークW)との両方を含む画像をカメラ40から取得することができる。このため、カメラ40の画像をロボット10の制御に有効活用し易い。従って、このロボット10は、カメラ画像のロボット制御への有効活用と、システム構成の簡素化との両立に有効である。
 多関節アーム20は6以上の自由度を有していてもよい。この場合、ブレのない画像をカメラ40から取得しながら、ツール30の位置、姿勢を多関節アーム20によって自在に調節することができる。
 多関節アーム20は、旋回部12に連結され、旋回部12の旋回中心軸線に交差する軸線52まわりに揺動する第1アーム21と、第1アーム21の先端部に連結され、第1アーム21に沿った軸線53まわりに旋回し、軸線53に交差する軸線54まわりに揺動する第2アーム22と、第2アーム22の先端部に連結され、第2アーム22に沿った軸線55まわりに旋回し、軸線55に交差する軸線56まわりに揺動する第3アーム23と、第3アーム23の先端部に設けられ、ツール30を保持し、第3アーム23に沿った軸線57まわりに旋回するツール保持部24と、を有していてもよい。この場合、簡素な構成にて多関節アーム20に6自由度を付与することができる。
 第1アーム21と、視野41の中心の光軸42は、軸線52に交差する基準面43に沿っており、第1アーム21の可動範囲A1は、軸線52に沿う方向において基準面43から離れていてもよい。この場合、第1アーム21の基端部を視野41の中心から外すことで、多関節アーム20による死角が形成され難い。
 ロボットシステム1は、ロボット10と、ワークWのカメラ40による撮像画像に基づいて動作指令を生成する指令生成部113と、動作指令に基づいて、ツール30による第1作業をワークWに対し実行するように多関節アーム20を制御するアーム制御部114と、を備える。この場合、カメラ40の画像をロボット10の制御に有効活用することができる。
 ロボットシステム1は、多関節アーム20が第1作業を実行している期間中におけるワークWのカメラ40による撮像画像に基づいて第1作業におけるイレギュラー状態を検知する作業監視部115を更に備えていてもよい。この場合、カメラ40の画像をロボット10の制御に更に有効活用することができる。
 指令生成部113は、作業監視部115がイレギュラー状態を検知した場合に、ワークWのカメラ40による撮像画像に基づいて動作指令を修正し、アーム制御部114は、修正後の動作指令に基づいて第1作業を多関節アーム20に継続させてもよい。この場合、カメラ40の画像をロボット10の制御に更に有効活用することができる。
 指令生成部113は、第1作業を多関節アーム20が実行している期間中における他のワークW(第2ワーク)のカメラ40による撮像画像に基づいて第2動作指令を更に生成し、アーム制御部114は、第2動作指令に基づいて、ツール30による第2作業を第2ワークに対し実行するように多関節アーム20を制御してもよい。この場合、第1作業の実行中に、第2ワークの画像を取得することによって、第1ワーク及び第2ワークに対する作業時間の短縮化を図ることができる。
 ロボットシステム1は、指令生成部113が動作指令を生成する前に、カメラ40がワークWに向くように旋回部12を旋回させ、その後、第1作業を多関節アーム20が完了させるまで旋回部12を停止させる旋回制御部111を更に備えていてもよい。この場合、第1作業中にもブレのない画像をカメラ40から取得することができる。従って、カメラ40の画像をロボット10の制御に更に有効活用することができる。
 第1作業は、ワークWをピックアップする作業であり、旋回制御部111は、第1作業により多関節アーム20がワークWをピックアップした状態で旋回部12を旋回させ、アーム制御部114は、旋回制御部111が旋回部12を旋回させている期間の少なくとも一部において、ピックアップ中のワークWをカメラ40の視野41内に配置するように多関節アーム20を制御してもよい。この場合、旋回部12の旋回が、ピックアップ中のワークWとカメラ40との相対的な位置関係に影響を及ぼさないことを利用して、カメラ40の画像をロボット10の制御に更に有効活用することができる。
 ロボットシステム1は、旋回制御部111が旋回部12を旋回させている期間中におけるピックアップ中のワークWのカメラ40による撮像画像に基づいて、ツール30によるワークWの保持状態を検査する保持状態監視部116を更に備えていてもよい。この場合、旋回中にカメラ40から取得した画像を更に有効活用することができる。
 ロボットシステム1は、カメラ40によるワークWの撮像画像に基づいて、3次元空間におけるワークWの位置及び姿勢を算出する画像処理部112を更に有し、指令生成部113は、画像処理部112が算出したワークWの位置及び姿勢に基づいて動作指令を生成してもよい。この場合、カメラ40からの画像をロボット10の制御に更に有効活用することができる。
 旋回部12は基部11の上に設けられ、カメラ40は、視野41の中心の光軸42が斜め下方に向くように旋回部12に設けられていてもよい。この場合、カメラ40がワークWを斜め上方から斜視するので、ツール30と、ワークWとの両方を含む画像を取得し易い。
 ロボットシステム1は、基部11の周囲においてワークWを支持する支持部2を更に備え、支持部2の上面2aは、旋回部12よりも下に位置していてもよい。この場合、ツール30と、ワークWとの両方を含む画像を更に取得し易い。
 以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変形が可能である。
 1…ロボットシステム、2…支持部、2a…上面、5…作業エリア、10…ロボット、11…基部、12…旋回部、20…多関節アーム、21…第1アーム、22…第2アーム、23…第3アーム、24…ツール保持部、30…ツール、31…ツール30の可動範囲、40…カメラ、41…視野、42…光軸、43…基準面、51…軸線(旋回部12の旋回中心軸線)、52…軸線(第1軸線)、53…軸線(第2軸線)、54…軸線(第3軸線)、55…軸線(第4軸線)、56…軸線(第5軸線)、57…軸線(第6軸線)、111…旋回制御部、112…画像処理部、113…指令生成部、114…アーム制御部、115…作業監視部、116…保持状態監視部、A1…第1アーム21の可動範囲、W…ワーク。

Claims (15)

  1.  基部と、
     前記基部に対して旋回する旋回部と、
     前記旋回部に連結され、作業用のツールの位置及び姿勢を変更する多関節アームと、
     前記旋回部に固定されたカメラと、を備え、
     前記多関節アームによる前記ツールの可動範囲と、前記カメラの視野とが重複している、ロボット。
  2.  前記多関節アームは6以上の自由度を有する、請求項1記載のロボット。
  3.  前記多関節アームは、
     前記旋回部に連結され、前記旋回部の旋回中心軸線に交差する第1軸線まわりに揺動する第1アームと、
     前記第1アームの先端部に連結され、前記第1アームに沿った第2軸線まわりに旋回し、前記第2軸線に交差する第3軸線まわりに揺動する第2アームと、
     前記第2アームの先端部に連結され、前記第2アームに沿った第4軸線まわりに旋回し、前記第4軸線に交差する第5軸線まわりに揺動する第3アームと、
     前記第3アームの先端部に設けられ、前記ツールを保持し、前記第3アームに沿った第6軸線まわりに旋回するツール保持部と、を有する、請求項2記載のロボット。
  4.  前記第1アームと、前記視野の中心の光軸は、前記第1軸線に交差する基準面に沿っており、前記第1アームの可動範囲は、前記第1軸線に沿う方向において前記基準面から離れている、請求項3記載のロボット。
  5.  請求項1~4のいずれか一項記載のロボットと、
     ワークの前記カメラによる撮像画像に基づいて動作指令を生成する指令生成部と、
     前記動作指令に基づいて、前記ツールによる第1作業を前記ワークに対し実行するように前記多関節アームを制御するアーム制御部と、を備えるロボットシステム。
  6.  前記多関節アームが前記第1作業を実行している期間中における前記ワークの前記カメラによる撮像画像に基づいて前記第1作業におけるイレギュラー状態を検知する作業監視部を更に備える、請求項5記載のロボットシステム。
  7.  前記指令生成部は、前記作業監視部がイレギュラー状態を検知した場合に、前記ワークの前記カメラによる撮像画像に基づいて前記動作指令を修正し、
     前記アーム制御部は、修正後の前記動作指令に基づいて前記第1作業を前記多関節アームに継続させる、請求項6記載のロボットシステム。
  8.  前記指令生成部は、前記第1作業を前記多関節アームが実行している期間中における第2ワークの前記カメラによる撮像画像に基づいて第2動作指令を更に生成し、
     前記アーム制御部は、前記第2動作指令に基づいて、前記ツールによる第2作業を前記第2ワークに対し実行するように前記多関節アームを制御する、請求項6又は7記載のロボットシステム。
  9.  前記指令生成部が前記動作指令を生成する前に、前記カメラが前記ワークに向くように前記旋回部を旋回させ、その後、前記第1作業を前記多関節アームが完了させるまで前記旋回部を停止させる旋回制御部を更に備える、請求項5~8のいずれか一項記載のロボットシステム。
  10.  前記第1作業は、前記ワークをピックアップする作業であり、
     前記旋回制御部は、前記第1作業により前記多関節アームが前記ワークをピックアップした状態で前記旋回部を旋回させ、
     前記アーム制御部は、前記旋回制御部が前記旋回部を旋回させている期間の少なくとも一部において、ピックアップ中の前記ワークを前記カメラの視野内に配置するように前記多関節アームを制御する、請求項9記載のロボットシステム。
  11.  前記旋回制御部が前記旋回部を旋回させている期間中における前記ピックアップ中のワークの前記カメラによる撮像画像に基づいて、前記ツールによる前記ワークの保持状態を検査する保持状態監視部を更に備える、請求項10記載のロボットシステム。
  12.  前記カメラによる前記ワークの撮像画像に基づいて、3次元空間における前記ワークの位置及び姿勢を算出する画像処理部を更に有し、
     前記指令生成部は、前記画像処理部が算出した前記ワークの位置及び姿勢に基づいて前記動作指令を生成する、請求項5~11のいずれか一項記載のロボットシステム。
  13.  前記旋回部は前記基部の上に設けられ、
     前記カメラは、視野の中心の光軸が斜め下方に向くように前記旋回部に設けられている、請求項5~12のいずれか一項記載のロボットシステム。
  14.  前記基部の周囲において前記ワークを支持する支持部を更に備え、
     前記支持部の上面は、前記旋回部よりも下に位置している、請求項13記載のロボットシステム。
  15.  基部と、前記基部に対して旋回する旋回部と、前記旋回部に連結され、作業用のツールの位置及び姿勢を変更する多関節アームと、を備えるロボットの、前記基部の周囲の作業エリアに配置されたワークの画像を、前記旋回部に設けられたカメラから取得し、当該画像に基づいて動作指令を生成することと、
     前記動作指令に基づいて、前記ツールによる第1作業を前記ワークに対し実行するように前記多関節アームを制御することと、を含む制御方法。
PCT/JP2020/042678 2019-12-17 2020-11-16 ロボット、ロボットシステム及び制御方法 WO2021124760A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080079344.XA CN114728420A (zh) 2019-12-17 2020-11-16 机器人、机器人系统以及控制方法
JP2021565378A JP7399981B2 (ja) 2019-12-17 2020-11-16 ロボット、ロボットシステム及び制御方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-227488 2019-12-17
JP2019227488 2019-12-17

Publications (1)

Publication Number Publication Date
WO2021124760A1 true WO2021124760A1 (ja) 2021-06-24

Family

ID=76477231

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/042678 WO2021124760A1 (ja) 2019-12-17 2020-11-16 ロボット、ロボットシステム及び制御方法

Country Status (3)

Country Link
JP (1) JP7399981B2 (ja)
CN (1) CN114728420A (ja)
WO (1) WO2021124760A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029245A1 (ja) * 2022-08-02 2024-02-08 川崎重工業株式会社 ロボットシステム、ロボットおよびロボットシステムの制御方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06218684A (ja) * 1993-01-22 1994-08-09 Mitsui Eng & Shipbuild Co Ltd 操作型マニピュレータの教示装置および操作型マニピュレータによる自動作業方法
JPH09272081A (ja) * 1996-04-05 1997-10-21 Nippon Steel Corp 遠隔操作入力装置及び遠隔操作入力方法
JP2012228761A (ja) * 2011-04-27 2012-11-22 Yaskawa Electric Corp ロボットシステム及び被作業物の製造方法
JP2013078825A (ja) * 2011-10-04 2013-05-02 Yaskawa Electric Corp ロボット装置、ロボットシステムおよび被加工物の製造方法
US9688489B1 (en) * 2015-03-30 2017-06-27 X Development Llc Modular dock for facilities integration
JP2018171688A (ja) * 2017-03-31 2018-11-08 平田機工株式会社 移載方法および移載システム
JP2018187749A (ja) * 2017-05-11 2018-11-29 セイコーエプソン株式会社 ロボット
JP2019126866A (ja) * 2018-01-23 2019-08-01 トヨタ自動車株式会社 動作軌道生成装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104842362B (zh) * 2015-06-18 2017-04-05 厦门理工学院 一种机器人抓取物料包的方法和机器人抓取装置
CN206925844U (zh) * 2017-03-29 2018-01-26 天津农学院 机器人装置
JP7091777B2 (ja) * 2018-03-30 2022-06-28 株式会社安川電機 ロボットシステム及び制御方法
CN110170978A (zh) * 2019-03-08 2019-08-27 华东师范大学 一种全向机械臂危险勘测机器人

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06218684A (ja) * 1993-01-22 1994-08-09 Mitsui Eng & Shipbuild Co Ltd 操作型マニピュレータの教示装置および操作型マニピュレータによる自動作業方法
JPH09272081A (ja) * 1996-04-05 1997-10-21 Nippon Steel Corp 遠隔操作入力装置及び遠隔操作入力方法
JP2012228761A (ja) * 2011-04-27 2012-11-22 Yaskawa Electric Corp ロボットシステム及び被作業物の製造方法
JP2013078825A (ja) * 2011-10-04 2013-05-02 Yaskawa Electric Corp ロボット装置、ロボットシステムおよび被加工物の製造方法
US9688489B1 (en) * 2015-03-30 2017-06-27 X Development Llc Modular dock for facilities integration
JP2018171688A (ja) * 2017-03-31 2018-11-08 平田機工株式会社 移載方法および移載システム
JP2018187749A (ja) * 2017-05-11 2018-11-29 セイコーエプソン株式会社 ロボット
JP2019126866A (ja) * 2018-01-23 2019-08-01 トヨタ自動車株式会社 動作軌道生成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029245A1 (ja) * 2022-08-02 2024-02-08 川崎重工業株式会社 ロボットシステム、ロボットおよびロボットシステムの制御方法

Also Published As

Publication number Publication date
JPWO2021124760A1 (ja) 2021-06-24
JP7399981B2 (ja) 2023-12-18
CN114728420A (zh) 2022-07-08

Similar Documents

Publication Publication Date Title
US7657346B2 (en) Object picking system
JP6823008B2 (ja) バラ積みされたワークを取り出すロボットシステムおよびロボットシステムの制御方法
JP6228120B2 (ja) 多関節型ロボットを備えた作業機および電気部品装着機
JP5849403B2 (ja) ロボットコントローラー、ロボット、及び、ロボットシステム
JP5630208B2 (ja) 形状計測装置、ロボットシステムおよび形状計測方法
US20140277694A1 (en) Robot system and method for producing to-be-processed material
US20130085604A1 (en) Robot apparatus, robot system, and method for producing a to-be-processed material
US20200149868A1 (en) Image capturing apparatus and machine tool
JP2013086184A (ja) ワーク取出システム、ロボット装置および被加工物の製造方法
CN111687819A (zh) 把持包括连接器的工件的作业工具以及具备作业工具的机器人装置
JP2011194498A (ja) 視覚検査システム
WO2021124760A1 (ja) ロボット、ロボットシステム及び制御方法
US10328582B2 (en) Process system including robot that transfers workpiece to process machine
JP6898374B2 (ja) ロボット装置の動作を調整する動作調整装置およびロボット装置の動作を調整する動作調整方法
JP7358747B2 (ja) ロボットシステム
JP2021133470A (ja) ロボットの制御方法およびロボットシステム
US11077529B2 (en) Wheel alignment adjustment system
WO2023032400A1 (ja) 自動搬送装置、及びシステム
JP7057841B2 (ja) ロボット制御システム及びロボット制御方法
US11759955B2 (en) Calibration method
JP2022126768A (ja) ロボット搭載移動装置
JPS62226308A (ja) 視覚センサを有するロボツトの制御方式
TW202235234A (zh) 控制裝置以及機器人系統
JP6915085B2 (ja) 作業機および把持位置探索方法
US20220258353A1 (en) Calibration Method

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021565378

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

Country of ref document: EP

Kind code of ref document: A1