WO2021241512A1 - ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法 - Google Patents

ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法 Download PDF

Info

Publication number
WO2021241512A1
WO2021241512A1 PCT/JP2021/019650 JP2021019650W WO2021241512A1 WO 2021241512 A1 WO2021241512 A1 WO 2021241512A1 JP 2021019650 W JP2021019650 W JP 2021019650W WO 2021241512 A1 WO2021241512 A1 WO 2021241512A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
work
additional axis
vector
tool
Prior art date
Application number
PCT/JP2021/019650
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 CN202180037531.6A priority Critical patent/CN115666879A/zh
Priority to JP2022526536A priority patent/JP7414987B2/ja
Priority to US17/927,062 priority patent/US20230202039A1/en
Priority to DE112021002976.2T priority patent/DE112021002976T5/de
Publication of WO2021241512A1 publication Critical patent/WO2021241512A1/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/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
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/0075Controlling reciprocating movement, e.g. for planing-machine
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • 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/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39198Manipulator used as workpiece handler and for machining operation

Definitions

  • the present invention relates to a control device, a robot system, and a control method for causing a robot to perform work on a work.
  • a robot system is known in which a robot tool is pressed against a work to perform work (deburring, etc.) on the work (for example, Patent Document 1).
  • the additional axis mechanism moves the robot or the work.
  • the work In between it is provided with a pressing direction determining unit that determines the pressing direction in which the robot presses the tool against the work.
  • the additional axis mechanism moves the robot or the work.
  • the robot or work by the additional axis mechanism Generates a movement command for the robot to move the tool along the work target location following the movement, and for the movement vector of the tool that the robot moves according to the movement command based on the motion planning data or the additional axis movement amount.
  • a vector in the direction along the work target, which is inclined according to the amount of movement of the additional axis, is acquired, and the acquired vector is used to determine the pressing direction in which the robot presses the tool against the work during the work.
  • the tool is moved along the work target location following the movement of the robot or the work by the additional axis mechanism. Can be done.
  • the work can be performed with the tool while moving the work, and thus the cycle time can be reduced.
  • the pressing direction in which the tool is pressed against the work target portion can be appropriately set.
  • FIG. 2 It is a block diagram of the robot system which concerns on one Embodiment. It is a schematic diagram of the robot system shown in FIG. It is a figure for demonstrating the motion planning data. In the robot system shown in FIG. 2, it is a figure which shows typically the relationship between the movement path of the motion planning data, the movement amount of an additional axis, and the movement vector of a tool at the time of work. It is a figure which shows typically the relationship between the vector of the direction along the work target place, and the pressing direction determined from the vector. It is a schematic diagram of the robot system which concerns on other embodiment. In the robot system shown in FIG.
  • FIG. 6 it is a figure which shows typically the relationship between the movement path of the motion planning data, the movement amount of an additional axis, and the movement vector of a tool at the time of work. It is a schematic diagram of the robot system which concerns on still another embodiment. It is a block diagram of the robot system shown in FIG.
  • the robot system 10 includes a robot 12, an additional axis mechanism 14, and a control device 50.
  • the robot 12 is a vertical articulated robot, and includes a base portion 16, a swivel body 18, a robot arm 20, a wrist portion 22, an end effector 24, and a force sensor 26.
  • the base portion 16 is fixed on the floor of the work cell, and the swivel cylinder 18 is provided on the base portion 16 so as to be able to swivel around a vertical axis.
  • the robot arm 20 has a lower arm portion 28 rotatably provided on the swivel body 18 around a horizontal axis, and an upper arm portion 30 rotatably provided on the tip end portion of the lower arm portion 28.
  • the wrist portion 22 is rotatably provided at the tip of the upper arm portion 30 and rotatably supports the end effector 24.
  • a servomotor 36 (FIG. 1) is built in each of the base portion 16, the swivel cylinder 18, the robot arm 20, and the wrist portion 22.
  • the servomotor 36 drives each movable element of the robot 12 (that is, the swivel body 18, the robot arm 20, and the wrist portion 22) in response to a command from the control device 50.
  • the end effector 24 has a tool driving unit 32 and a tool 34.
  • the tool 34 is provided on the tool drive unit 32 so as to be rotatable around the axis A1.
  • the tool 34 is a deburring tool (abrasive or the like), and the convex portion formed on the work W is scraped at the conical tip portion thereof (so-called deburring).
  • the tool drive unit 32 has a spindle motor, an air cylinder, or the like, and is connected to the tip end portion of the wrist portion 22 via a force sensor 26.
  • the tool driving unit 32 rotationally drives the tool 34 around the axis A1 in response to a command from the control device 50.
  • the force sensor 26 is inserted between the wrist portion 22 and the end effector 24 (specifically, the tool drive portion 32).
  • the force sensor 26 is, for example, a 6-axis force sensor having a plurality of strain gauges, and detects a force F applied from the work W to the tool 34 while the tool 34 is processing the work W.
  • the robot coordinate system C1 is set in the robot 12.
  • the robot coordinate system C1 is a control coordinate system for automatically controlling the operation of each movable element of the robot 12.
  • the robot coordinate system C1 is fixed in a three-dimensional space, its origin is arranged at the center of the base portion 16, and its z-axis coincides with the swivel axis of the swivel cylinder 18. It is set for 12.
  • the tool coordinate system C2 is set in the end effector 24 (specifically, the tool 34).
  • the tool coordinate system C2 is a control coordinate system for automatically controlling the position of the end effector 24 (tool 34) in the robot coordinate system C1.
  • position may mean position and posture.
  • the origin (or TCP) of the tool coordinate system C2 is arranged at a predetermined position of the end effector 24 (for example, the tip point of the tool 34), and its z-axis coincides with the axis A1. Is set for the end effector 24 (tool 34).
  • the control device 50 sends a command to each servo motor 36 of the robot 12 so as to arrange the end effector 24 (tool 34) at the position represented by the tool coordinate system C2 set in the robot coordinate system C1, and the robot 12
  • the end effector 24 (tool 34) is positioned at an arbitrary position in the robot coordinate system C1 by the operation of each movable element of.
  • the additional axis mechanism 14 relatively moves the robot 12 and the work W.
  • the additional shaft mechanism 14 is, for example, a belt conveyor, and has a movable portion 38 and a drive mechanism 40 for driving the movable portion 38.
  • the movable portion 38 is, for example, a timing belt and is provided on a base frame (not shown) so as to be movable along the axis A2.
  • the drive mechanism 40 has a servomotor 42 (FIG. 1) and a power transmission unit 44.
  • the servomotor 42 rotates its output shaft (not shown) in response to a command from the control device 50.
  • the power transmission unit 44 has, for example, a speed reducer, a pulley, a ball screw mechanism, or the like, transmits the rotational force of the output shaft of the servomotor 42 to the movable portion 38, and moves the movable portion 38 in the direction of the axis A2.
  • the work W is installed on the movable portion 38 by using, for example, a jig (not shown). By moving the movable portion 38, the additional shaft mechanism 14 moves the work W relative to the robot 12 along the axis A2.
  • the additional axis coordinate system C3 is set in the additional axis mechanism 14.
  • the additional axis coordinate system C3 is a control coordinate system for automatically controlling the position of the work W installed in the movable portion 38.
  • the additional axis coordinate system C3 is set with respect to the additional axis mechanism 14 so that its y-axis direction is parallel to the axis A2.
  • the positional relationship between the additional axis coordinate system C3 and the robot coordinate system C1 is known by calibration, and the coordinates of the additional axis coordinate system C3 and the coordinates of the robot coordinate system C1 are obtained via a known transformation matrix. It can be converted to each other.
  • the control device 50 controls the operations of the robot 12 and the additional axis mechanism 14.
  • the control device 50 is a computer having a processor 52, a memory 54, and an I / O interface 56.
  • the processor 52 has a CPU, a GPU, or the like, and is communicably connected to the memory 54 and the I / O interface 56 via the bus 58.
  • the processor 52 performs arithmetic processing for realizing each function of the control device 50 described later.
  • the memory 54 has a RAM, a ROM, or the like, and temporarily or permanently stores various data.
  • the I / O interface 56 has, for example, an Ethernet (registered trademark) port, a USB port, an optical fiber connector, an HDMI (registered trademark) terminal, or the like, and wirelessly or data is transmitted to an external device under a command from the processor 52. Communicate by wire.
  • the force sensor 26, the servomotors 36 and 42 described above are connected to the I / O interface 56 so as to be able to communicate wirelessly or by wire.
  • the control device 50 performs the work (that is, deburring) of processing the work W by pressing the rotating tool 34 against the work W while relatively moving the robot 12 and the work W by the additional axis mechanism 14.
  • the robot 12 uses the tool 34 to perform work (deburring) along the edge D from the apex B to the apex C of the work W. That is, the edge D is the work target portion of the work W.
  • the control device 50 acquires the motion planning data PD as a preparatory step before executing the work for the work W.
  • the motion planning data PD is for causing the robot 12 to perform an operation of moving the tool 34 along the work target portion D, and the robot 12 should position the tool 34 (or TCP) in the operation. including the data of the target position TP n, the movement path MP n between two target positions TP n and TP n + 1 and the data.
  • the motion planning data PD includes the position data of the target position TP n in the robot coordinate system C1, the data of the movement path MP n , the speed V n when the robot 12 moves the tool 34 along the movement path MP n, and the like. include.
  • the position data of the target position TP n and the data of the movement path MP n can be acquired by teaching the robot 12 of the actual machine the operation of moving the tool 34 along the work target portion D of the work W. (So-called online teaching).
  • the additional axis mechanism 14 makes the work W stationary at the reference position RP with respect to the robot 12.
  • This reference position RP can be represented as coordinates in the y-axis direction of the additional axis coordinate system C3.
  • the operator jogs the robot 12 using, for example, a teaching device (so-called teaching pendant) or a tablet terminal device, and moves the tool 34 along the work target portion D of the work W in a state of being stationary at the reference position RP.
  • teaching pendant teaching pendant
  • the operation of moving from the vertex B to the vertex C is taught to the robot 12.
  • the position data of the target position TP n and the data of the movement route MP n are acquired.
  • the position data of the target position TP n and the data of the movement path MP n can also be acquired by simulation or the like (so-called offline teaching).
  • the target position TP is performed by simulating the same teaching as online teaching using the model of the robot 12 arranged in the virtual space, the model of the additional axis mechanism 14, and the model of the work W.
  • the position data of n and the data of the movement route MP n can be acquired.
  • the operator in consideration of various conditions of the work (the cycle time, the type of the workpiece W, etc.), to set parameters such as velocity V n.
  • the motion planning data PD including the data of the target position TP n , the movement path MP n, and the velocity V n is generated.
  • the processor 52 of the control device 50 acquires the motion planning data PD and stores it in the memory 54.
  • the motion planning data PD is generated based on the work W stationary at the reference position P0 in the robot coordinate system C1. Therefore, the motion planning data PD causes the robot 12 to perform an operation of moving the tool 34 along the work target portion D of the work W stationary in the robot coordinate system C1.
  • the processor 52 After acquiring the operation plan data PD, when the processor 52 receives the work start command from the operator, the host controller, or the computer program, the processor 52 starts the operation flow for the work (deburring) on the work W. First, the processor 52 arranges the work W at the reference position RP by the additional axis mechanism 14, and arranges the tool 34 at the target position TP 1 by the robot 12.
  • the processor 52 operates the tool driving unit 32 to start the operation of rotating the tool 34. Further, the processor 52 starts the feed operation of the work W by the additional axis mechanism 14. Specifically, the processor 52 operates the drive mechanism 40 to move the movable portion 38, thereby starting the operation of transporting the work W in the y-axis plus direction of the additional axis coordinate system C3. At the same time, the processor 52 starts the operation of moving the tool 34 along the work target portion D by the robot 12 according to the motion planning data PD.
  • the processor 52 is based on the position data of the target positions TP 1 and TP 2 included in the operation plan data PD and the data of the movement path MP 1 from the target position TP 1 to the target position TP 2 . from the target position TP 1 to the target position TP 2 along a movement path MP 1 generates a movement command CA 1 for moving the tool 34 (or TCP).
  • the processor 52 acquires the additional axis movement amount ⁇ 1 of the work W to be moved by the additional axis mechanism 14 from the start of the operation of the additional axis mechanism 14.
  • the additional shaft movement amount ⁇ 1 may be, for example, a movement command CB 1 (position command, speed command, etc.) transmitted by the processor 52 to the servomotor 42 of the additional shaft mechanism 14.
  • the additional axis movement amount ⁇ 1 may be a physical quantity (distance or the like) obtained from the movement command CB 1.
  • the additional axis movement amount ⁇ 1 may be a physical quantity obtained from the feedback (rotation angle, etc.) of the rotation detector (encoder, Hall element, etc.) that detects the rotation of the servomotor 42.
  • it may be a physical quantity detected by a displacement sensor capable of detecting the amount of displacement of the movable portion 38 in the y-axis direction of the additional axis coordinate system C3.
  • the processor 52 functions as the additional axis movement amount acquisition unit 60 (FIG. 1) for acquiring the additional axis movement amount ⁇ 1 of the work W to be moved by the additional axis mechanism 14.
  • FIG. 4 schematically shows a movement vector VA 1 when the robot 12 moves the tool 34 according to the movement command CD 1.
  • the movement vector VA 1 is a vector in the direction along the work target portion D according to the movement command CA 1 and the direction of the additional axis movement amount ⁇ 1 according to the movement command CC 1 (that is, the y-axis plus direction of the additional axis coordinate system C3). ) Corresponds to the sum of the vectors.
  • the processor 52 operates the robot 12 according to the movement command CD 1 , and moves the tool 34 along the work target portion D following the movement of the work W by the additional axis mechanism 14.
  • the tool 34 is corrected so as to deviate from the target position TP 2 predetermined in the operation plan data PD by a distance corresponding to the additional axis movement amount ⁇ 1 in the y-axis plus direction of the additional axis coordinate system C3. It was made to reach the corrected target position TP 2 '.
  • the processor 52 repeatedly executes the following process every time the correction target position TP n '(n ⁇ 3) is reached. That is, when the tool 34 reaches the correction target position TP n ', the processor 52 moves the tool 34 from the target position TP n to the target position TP n + 1 along the movement path MP n based on the motion planning data PD. to generate a movement command CA n.
  • the additional shaft mechanism 14 acquires the additional shaft movement amount ⁇ n for moving the work W during the movement.
  • the processor 52 generates a movement command CC n for moving the tool 34 in the y-axis direction of the additional axis coordinate system C3 by the additional axis movement amount ⁇ n.
  • the processor 52 moves the tool 34 to the robot 12 according to the generated movement command CD n.
  • the tool 34 is displaced from the target position TP n + 1 in the y-axis plus direction of the additional axis coordinate system C3 by a distance corresponding to the additional axis movement amount ⁇ n.
  • the corrected correction target position TP n + 1' will be reached.
  • the processor 52 When the tool 34 reaches the correction target position TP n ', the processor 52 functions as an additional axis movement amount acquisition unit 60 to move the tool 34 from the correction target position TP n- 2'to the correction target position TP n.
  • the additional axis mechanism 14 may acquire the additional axis movement amount ⁇ n-1 for moving the work W while moving to -1'.
  • the processor 52 follows the movement of the work W by the additional axis mechanism 14 as shown in the movement vector VA n , based on the motion planning data PD and the additional axis movement amount ⁇ n. It functions as a command generation unit 62 (FIG. 1) that generates a movement command CD n for moving the tool 34 along the work target portion D.
  • the robot 12 moves the tool 34 to the work target portion of the work W. Force control is performed to control the pressing force PF pressed against D to a predetermined target value PF T.
  • the processor 52 determines the pressing direction DR n in which the robot 12 presses the tool 34 against the work target portion D of the work W in a cycle in which the tool 34 reaches the correction target position TP n'. ..
  • the processor 52 In order to determine the pressing direction DR n , the processor 52 first acquires a vector VB n in the direction along the work target portion D of the work W with which the tool 34 abuts. As an example, when the tool 34 reaches the correction target position TP n '(or before and after) , the processor 52 sets the vector VB n to the movement path MP n-1 (preliminarily defined in the motion planning data PD). Or, it is acquired as a vector in the direction of MP n).
  • this movement path MP n-1 was obtained by instructing the robot 12 to move the tool 34 along the work target portion D of the stationary work W with respect to the robot coordinate system C1.
  • the direction of the movement path MP n-1 is a direction (substantially parallel direction) along the work target portion D with which the tool 34 abuts when the tool 34 reaches the correction target position TP n'. ..
  • the processor 52 acquires the vector VB n based on the motion planning data PD (specifically, the movement path MP n-1).
  • the processor 52 when the tool 34 reaches the correction target position TP n ', the processor 52 has a vector VB n from the movement vector VA n-1 of the tool 34 and the additional axis movement amount ⁇ n-1. May be obtained.
  • the processor 52 may, for example, the rotation detector which detects the rotation of the servo motor 36 of the robot 12 (an encoder, a Hall element, etc.) robot coordinate system of the corrected target position from the feedback from the TP n-1 'and TP n' The coordinates in C1 can be acquired, and the movement vector VA n-1 can be obtained from these coordinates.
  • the processor 52 obtains a movement vector ⁇ n-1 in which the work W is moved by the additional axis movement amount ⁇ n-1 by the additional axis mechanism 14.
  • the movement vector ⁇ n-1 is, for example, a movement command CB n-1 transmitted by the processor 52 to the servomotor 42 when the additional axis mechanism 14 moves the work W by the additional axis movement amount ⁇ n-1 . It can be obtained from the feedback of the rotation detector of the servo motor 42.
  • the processor 52 acquires the vector VB n based on the additional axis movement amount ⁇ n-1.
  • the vector VB n acquired as described above is tilted with respect to the movement vector VA n-1 of the tool 34 moved by the robot 12 according to the movement command CD n-1 according to the additional axis movement amount ⁇ n-1. ..
  • the processor 52 functions as a vector acquisition unit 64 (FIG. 1) that acquires a vector VB n based on the motion planning data PD or the additional axis movement amount ⁇ n-1.
  • the processor 52 determines the pressing direction DR n using the acquired vector VB n. Specifically, the processor 52 obtains a vector tilted at a predetermined angle ⁇ with respect to the vector VB n in the inward direction of the work W by multiplying the vector VB n by a known rotation vector RV. , The direction of the vector is determined as the pressing direction DR n.
  • the angle ⁇ can be arbitrarily set by changing the parameters of the rotation vector RV.
  • FIG. 5 schematically shows the vector VB n and the pressing direction DR n .
  • the angle ⁇ 90 ° is set (that is, the pressing direction DR n is orthogonal to the vector VB n).
  • the processor 52 functions as a pressing direction determining unit 66 (FIG. 1) for determining the pressing direction DR n using the vector VB n.
  • the processor 52 while moving the tool 34 'from the corrected target position TP n + 1' corrected target position TP n to, the workpiece W the tool 34 by the robot 12, pressed determined to pushing direction DR n.
  • the force sensor 26 continuously detects the force F applied from the work W to the tool 34 during this period.
  • the processor 52 functions as a command generation unit 62, and based on the force F acquired from the force sensor 26, the force control command CE for controlling the pressing force PF applied to the work W from the tool 34 to the target value PF T. To generate. Then, in addition to the above-mentioned movement command CD n , the processor 52 transmits a force control command CE to each servomotor 36 of the robot 12, and controls the operation of the robot 12 according to the force control command CE.
  • the robot 12 while the tool 34 is moved 'from the corrected target position TP n + 1' corrected target position TP n to in accordance with the movement instruction CD n, the position of the tool 34 in accordance with the force control command CE, for example, the additional axis coordinate system Displace C3 in the y-axis direction.
  • processor 52 while moving 'from the corrected target position TP n + 1' corrected target position TP n to, executing a force control for matching the pushing force PF to the target value PF T.
  • the processor 52 can similarly perform force control while moving the tool 34 from the target position TP 1 to the correction target position TP 2'.
  • Pushing direction DR 1 while moving the tool 34 from the target position TP 1 to the correction target position TP 2 ', for example, as the direction of the movement path MP 1, may be predetermined by the operator.
  • the processor 52 since the processor 52 generates the movement command CD n based on the motion planning data PD and the additional axis movement amount ⁇ n , the tool 34 is used by the additional axis mechanism 14. It can be moved along the work target portion D following the movement of W. According to this configuration, for example, in the case of machining a large work W, the cycle time can be reduced by being able to perform machining with the tool 34 while moving the work W.
  • the processor 52 acquires a vector VB n in the direction along the work target portion D during work, and determines the pressing direction DR n using the vector VB n.
  • the pressing direction of the tool 34 when it is set as a direction orthogonal to said movement vector VA n, pressing with the direction, without orthogonal to the work object point D , Will be tilted. In this case, the tool 34 cannot be properly pressed against the work W.
  • the processor 52 acquires the above-mentioned vector VB n as a vector in the direction of the movement path MP n-1 (or MP n ) included in the motion planning data PD. According to this configuration, the processor 52 can easily and quickly acquire the vector VB n.
  • the processor 52 subtracts the movement vector ⁇ n-1 of the additional axis movement amount ⁇ n-1 from the movement vector VA n-1 of the tool 34 to obtain the vector VB n .
  • the processor 52 periodically receives feedback from the rotation detectors of the servomotors 36 and 42 during the work and uses it for controlling the robot 12. Then, the additional-axis travel alpha n-1, the corrected target position TP n-1 'and TP n' is obtained from such feedback.
  • the vector VB n can be acquired by using the feedback acquired as a normal operation.
  • the additional shaft mechanism 14 moves the work W with respect to the robot 12
  • the additional axis mechanism 14 may move the robot 12 with respect to the work W.
  • FIG. 6 In the robot system 10'shown in FIG. 6, the robot 12 (specifically, the base portion 16) is fixed on the movable portion 38 of the additional shaft mechanism 14.
  • the block diagram of the robot system 10' is the same as that of the robot system 10 shown in FIG.
  • the robot coordinate system C1 moves in the y-axis direction of the additional axis coordinate system C3 in response to the movement of the movable portion 38 by the additional axis mechanism 14.
  • the robot coordinate system C1 and the additional axis coordinate system C3 can be mutually converted via a transformation matrix according to the position of the origin of the robot coordinate system C1 in the additional axis coordinate system C3.
  • the control device 50 acquires the motion planning data PD as a preparatory step.
  • This motion planning PD teaches the robot 12 the motion of moving the tool 34 along the work target portion D of the work W when the additional axis mechanism 14 makes the robot 12 stationary with respect to the work W at the reference position RP.
  • the processor 52 causes the robot 12 to be placed at the reference position RP by the additional axis mechanism 14, and the tool 34 to be placed at the target position TP 1 by the robot 12.
  • the processor 52 starts the operation of moving the robot 12 (that is, the robot coordinate system) in the y-axis plus direction of the additional axis coordinate system C3 by the additional axis mechanism 14, and the tool 34 according to the operation plan data PD.
  • the along the movement path MP 1 from the target position TP 1 to the target position TP 2 generates a movement command CA 1 for moving the tool 34 (or TCP).
  • the processor 52 functions as the additional axis movement amount acquisition unit 60, and acquires the additional axis movement amount ⁇ 1 (FIG. 7) of the work W to be moved by the additional axis mechanism 14 from the start of the operation of the additional axis mechanism 14. do.
  • the additional axis movement amount ⁇ 1 is acquired from a movement command to the servomotor 42 (or a physical quantity obtained from the movement command) or a detection value of a rotation detector, a displacement sensor, or the like, as in the above-described embodiment. It can be a physical quantity.
  • the movement vector VA 1 of the tool 34 at this time is schematically shown in FIG.
  • the movement vector VA 1 shown in FIG. 7 is a vector in the direction along the work target portion D according to the movement command CA 1 and the direction of the additional axis movement amount ⁇ 1 according to the movement command CC 1 (that is, the additional axis coordinate system C3). Corresponds to the sum of the vectors in the minus direction of the y-axis). In other words, the movement vector VA 1 is obtained by subtracting the vector of the additional axis movement amount ⁇ 1 from the vector of the movement command CA 1.
  • the processor 52 operates the robot 12 according to the movement command CD 1 to move the tool 34 along the work target portion D following the movement of the work W by the additional axis mechanism 14, and the correction target position TP 2 'Reach.
  • the additional axis coordinate system C3 is deviated in the minus direction of the y-axis by a corresponding distance.
  • the processor 52 repeatedly executes this process in the cycle of reaching the correction target position TP n'. That is, when it reaches the corrected target position TP n ', the processor 52, the operation plan while generating a movement command CA n based on the data PD, and functions as an additional axis displacement acquiring unit 60, corrects the tool 34 target position additional axis mechanism 14 acquires the additional axis movement amount beta n of the workpiece W is moved while moving 'from the corrected target position TP n' TP n-1 to.
  • the processor 52 generates a movement command CC n for moving the tool 34 by the additional axis movement amount ⁇ n in which the sign of the acquired additional axis movement amount ⁇ n is inverted, and the movement command is sent to the movement command CA n.
  • the movement command CD n is generated by adding CC n.
  • the processor 52 moves the tool 34 to the robot 12 according to the generated movement command CD n.
  • the tool 34 reaches the correction target position TP n + 1'as shown in the movement vector VA n in FIG.
  • processor 52 in a manner similar to the above-described embodiment, in the period to reach the tool 34 into the corrected target position TP n ', the pressing direction DR n the robot 12 presses the tool 34 to the work target portion D of the workpiece W To decide.
  • the processor 52 functions as a vector acquisition unit 64 to acquire the vector VB n in the direction along the work target portion D.
  • the processor 52 acquires the vector VB n as a vector in the direction of the movement path MP n-1 (or MP n).
  • This vector VB n is inclined according to the additional axis movement amount ⁇ n-1 with respect to the movement vector VA n-1 of the tool 34 moved by the robot 12 according to the movement command CD n-1.
  • the processor 52 functions as the pressing direction determining unit 66 as in the above-described embodiment, and determines the pressing direction DR n using the acquired vector VB n .
  • Processor 52 while moving the tool 34 'from the corrected target position TP n + 1' corrected target position TP n to, the workpiece W the tool 34 by the robot 12, by pressing determined to pressing direction DR n, the pressing force PF The force control to control the target value PF T is executed.
  • the tool 34 is used by the robot 12 by the additional axis mechanism 14 by generating the movement command CD n based on the motion planning data PD and the additional axis movement amount ⁇ n. It is possible to move along the work target location D following the movement of the work target location, thereby reducing the cycle time, and by determining the pressing direction DR n using the vector VB n , the work target location.
  • the pressing direction DR n can be appropriately set with respect to D.
  • the robot 12 and the work W may be moved independently by a plurality of additional axis mechanisms.
  • a form is shown in FIGS. 8 and 9.
  • the robot system 10 shown in FIGS. 8 and 9 includes a robot 12, additional axis mechanisms 14A and 14B, and a control device 50.
  • the additional axis mechanisms 14A and 14B have additional axis mechanisms shown in FIGS. 2 and 6, respectively. It has the same configuration as 14.
  • the control device 50 (specifically, the processor 52) of the robot system 10 ”drives the drive mechanism 40A with reference to the additional axis coordinate system C3_A of the additional axis mechanism 14A, and drives the work installed on the movable portion 38A.
  • the drive mechanism 40B is driven with reference to the additional axis coordinate system C3_B of the additional axis mechanism 14B, and the robot 12 installed on the movable portion 38B is conveyed along the axis A2_B.
  • the processor 52 moves the work W by the additional axis mechanism 14A and the robot 12 by the additional axis mechanism 14B during work.
  • the processor 52 generates a movement command CD n, the acquisition of the vector VB n, and the pressing direction DR n Can make a decision.
  • the processor 52 functions as an additional axis movement amount acquisition unit 60, and is added to the additional axis movement amount ⁇ n in which the additional axis mechanism 14A moves the work W in the y-axis direction of the additional axis coordinate system C3_A.
  • the processor 52 based on the synthesis additional axis movement amount gamma n, generates motion command CD n, can obtain the vector VB n, and the determination of the pressing direction DR n performs.
  • the target position TPn included in the motion planning data PD is obtained in advance by teaching the robot 12 has been described.
  • at least one of the plurality of target position TP n may be an interpolated target position is calculated from previously obtained target position by the teaching of the robot 12.
  • the target position TP n and the target position TP n + 3 are obtained in advance by the teaching of the robot 12, while the target position TP n + 1 and the target position TP n + 2 between them are the target position TP n and the target position. It may be an interpolation target position automatically calculated from TP n + 3.
  • the position data of the interpolated target position obtained from the target position taught in this way is also included in the motion planning data PD.
  • the tool 34 is a deburring tool and the robot 12 performs deburring work on the work W has been described.
  • the tool 34 may be any type of tool (for example, a cutting tool) that is pressed against the work W to perform a predetermined work.
  • the additional shaft mechanism 14 is not limited to the belt conveyor, but is, for example, a movable work table, a work transfer device including a ball screw mechanism for driving the work table in a predetermined direction, a rail, and the rail. It may be any type of mechanism capable of relatively moving the work W and the robot 12, such as a traveling device provided with a traveling carriage.
  • the robot system 10, 10'or 10 may include a first control device 50A for controlling the robot 12 and a second control device 50B for controlling the additional axis mechanism 14.
  • the rotation detector of the servomotor 42 may be connected to the first control device 50A and supply feedback (rotation angle or the like) to the first control device 50A.
  • control devices 50A and 50B are connected to each other so as to be able to communicate with each other, and execute the various functions described above while communicating with each other.
  • either one of the control devices 50A and 50B may function as an additional axis movement amount acquisition unit 60, a command generation unit 62, a vector acquisition unit 64, and a pressing direction determination unit 66.
  • the first control device 50A performs at least one function of the additional axis movement amount acquisition unit 60, the command generation unit 62, the vector acquisition unit 64, and the pressing direction determination unit 66, while the second control.
  • the device 50B may perform a function different from that of the first control device 50A among the additional axis movement amount acquisition unit 60, the command generation unit 62, the vector acquisition unit 64, and the pressing direction determination unit 66.
  • Robot 14 Additional axis mechanism 26 Force sensor 50, 50A, 50B Control device 52 Processor 60 Additional axis movement amount acquisition unit 62 Command generation unit 64 Vector acquisition unit 66 Pushing direction determination unit

Abstract

付加軸機構によってロボットとワークとを相対的に移動させつつロボットのツールでワークに対する作業を実行したい場合において、ワークに対してツールを適切な方向から押し付けることが求められている。 制御装置は、付加軸移動量を取得する付加軸移動量取得部60と、ロボット12の動作計画データと付加軸移動量とに基づいてロボット12の移動指令を生成する指令生成部62と、動作計画データ又は付加軸移動量に基づいて、ワークの作業対象箇所に沿う方向のベクトルを取得するベクトル取得部64と、ベクトル取得部64が取得したベクトルを用いて、作業の間にロボット12がツールをワークに押し付ける押付方向を決定する押付方向決定部66とを備える。

Description

ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法
 本発明は、ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法に関する。
 ロボットのツールをワークに押し付けて該ワークに対する作業(バリ取り等)を実行するロボットシステムが知られている(例えば、特許文献1)。
特開2015-009324号公報
 大型のワークに対して作業を行う場合等において、付加軸機構によってロボットとワークとを相対的に移動させつつロボットのツールでワークに対する作業を実行したいという要求がある。このような場合において、ワークに対してツールを適切な方向から押し付けることが求められる。
 本開示の一態様において、ロボットとワークとを付加軸機構によって相対的に移動させつつロボットのツールをワークに押し付けて該ワークに対する作業を実行する制御装置は、付加軸機構がロボット又はワークを移動させる付加軸移動量を取得する付加軸移動量取得部と、ワークの作業対象箇所に沿ってツールを移動させる動作をロボットに実行させるための動作計画データと付加軸移動量とに基づいて、付加軸機構によるロボット又はワークの移動に追随してロボットにツールを作業対象箇所に沿って移動させるための移動指令を生成する指令生成部と、動作計画データ又は付加軸移動量に基づいて、移動指令に従ってロボットが移動させるツールの移動ベクトルに対し付加軸移動量に応じて傾斜する、作業対象箇所に沿う方向のベクトルを取得するベクトル取得部と、ベクトル取得部が取得したベクトルを用いて、作業の間にロボットがツールをワークに押し付ける押付方向を決定する押付方向決定部とを備える。
 本開示の他の態様において、ロボットとワークとを付加軸機構によって相対的に移動させつつロボットのツールをワークに押し付けて該ワークに対する作業を実行する方法は、付加軸機構がロボット又はワークを移動させる付加軸移動量を取得し、ワークの作業対象箇所に沿ってツールを移動させる動作をロボットに実行させるための動作計画データと付加軸移動量とに基づいて、付加軸機構によるロボット又はワークの移動に追随してロボットにツールを作業対象箇所に沿って移動させるための移動指令を生成し、動作計画データ又は付加軸移動量に基づいて、移動指令に従ってロボットが移動させるツールの移動ベクトルに対し付加軸移動量に応じて傾斜する、作業対象箇所に沿う方向のベクトルを取得し、取得したベクトルを用いて、作業の間にロボットがツールをワークに押し付ける押付方向を決定する。
 本開示によれば、動作計画データ及び付加軸移動量に基づいて移動指令を生成することで、ツールを、付加軸機構によるロボット又はワークの移動に追随して作業対象箇所に沿って移動させることができる。これにより、例えば大型のワークを加工する場合において、ワークを移動させながらツールで作業を行うことができ、以って、サイクルタイムの縮減を実現できる。これとともに、作業時の作業対象箇所に沿う方向のベクトルを取得し、該ベクトルを用いて押付方向を決定することで、作業対象箇所に対してツールを押し付ける押付方向を適切に設定できる。
一実施形態に係るロボットシステムのブロック図である。 図1に示すロボットシステムの概略図である。 動作計画データを説明するための図である。 図2に示すロボットシステムにおいて、動作計画データの移動経路と、付加軸移動量と、作業時のツールの移動ベクトルとの関係性を模式的に示す図である。 作業対象箇所に沿う方向のベクトルと、該ベクトルから決定される押付方向の関係性を模式的に示す図である。 他の実施形態に係るロボットシステムの概略図である。 図6に示すロボットシステムにおいて、動作計画データの移動経路と、付加軸移動量と、作業時のツールの移動ベクトルとの関係性を模式的に示す図である。 さらに他の実施形態に係るロボットシステムの概略図である。 図8に示すロボットシステムのブロック図である。
 以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図1及び図2を参照して、一実施形態に係るロボットシステム10について説明する。ロボットシステム10は、ロボット12、付加軸機構14、及び制御装置50を備える。
 図2に示すように、本実施形態においては、ロボット12は、垂直多関節ロボットであって、ベース部16、旋回胴18、ロボットアーム20、手首部22、エンドエフェクタ24、及び力センサ26を有する。ベース部16は、作業セルの床の上に固定されている、旋回胴18は、鉛直軸周りに旋回可能となるようにベース部16に設けられている。ロボットアーム20は、旋回胴18に水平軸周りに回動可能に設けられた下腕部28と、該下腕部28の先端部に回動可能に設けられた上腕部30とを有する。手首部22は、上腕部30の先端部に回動可能に設けられ、エンドエフェクタ24を回動可能に支持する。
 ベース部16、旋回胴18、ロボットアーム20、及び手首部22には、サーボモータ36(図1)がそれぞれ内蔵されている。サーボモータ36は、制御装置50からの指令に応じてロボット12の各可動要素(すなわち、旋回胴18、ロボットアーム20、及び手首部22)を駆動する。
 エンドエフェクタ24は、ツール駆動部32、及びツール34を有する。ツール34は、ツール駆動部32に軸線A1周りに回動可能に設けられている。本実施形態においては、ツール34は、バリ取りツール(研磨材等)であって、その円錐状の先端部でワークWに形成された凸部を削る加工を行う(いわゆる、バリ取り)。ツール駆動部32は、スピンドルモータ又はエアシリンダ等を有し、力センサ26を介して手首部22の先端部に連結されている。ツール駆動部32は、制御装置50からの指令に応じてツール34を軸線A1周りに回転駆動する。
 力センサ26は、手首部22とエンドエフェクタ24(具体的には、ツール駆動部32)との間に介挿されている。力センサ26は、例えば、複数の歪ゲージを有する6軸力覚センサであって、ツール34がワークWを加工している間に該ワークWからツール34に加えられる力Fを検出する。
 ロボット12には、ロボット座標系C1が設定されている。ロボット座標系C1は、ロボット12の各可動要素の動作を自動制御するための制御座標系である。本実施形態においては、ロボット座標系C1は、3次元空間に固定されており、その原点がベース部16の中心に配置され、そのz軸が旋回胴18の旋回軸に一致するように、ロボット12に対して設定されている。
 一方、エンドエフェクタ24(具体的には、ツール34)には、ツール座標系C2が設定されている。ツール座標系C2は、ロボット座標系C1におけるエンドエフェクタ24(ツール34)の位置を自動制御するための制御座標系である。なお、本稿において、「位置」とは、位置及び姿勢を意味する場合がある。本実施形態においては、ツール座標系C2は、その原点(又は、TCP)が、エンドエフェクタ24の所定位置(例えば、ツール34の先端点)に配置され、そのz軸が軸線A1に一致するように、エンドエフェクタ24(ツール34)に対して設定されている。
 制御装置50は、ロボット座標系C1に設定したツール座標系C2によって表される位置にエンドエフェクタ24(ツール34)を配置させるように、ロボット12の各サーボモータ36へ指令を送信し、ロボット12の各可動要素の動作によってエンドエフェクタ24(ツール34)をロボット座標系C1における任意の位置に位置決めする。
 付加軸機構14は、ロボット12とワークWとを相対的に移動させる。具体的には、付加軸機構14は、例えばベルトコンベアであって、可動部38と、該可動部38を駆動する駆動機構40とを有する。可動部38は、例えばタイミングベルトであって、軸線A2に沿って可動となるように土台フレーム(図示せず)に設けられている。
 駆動機構40は、サーボモータ42(図1)、及び動力伝達部44を有する。サーボモータ42は、制御装置50からの指令に応じて、その出力シャフト(図示せず)を回転させる。動力伝達部44は、例えば、減速機、プーリ、又はボールねじ機構等を有し、サーボモータ42の出力シャフトの回転力を可動部38へ伝達し、該可動部38を軸線A2の方向へ移動させる。ワークWは、例えば治具(図示せず)を用いて、可動部38の上に設置される。付加軸機構14は、可動部38を移動させることで、ワークWをロボット12に対し、軸線A2に沿って相対的に移動させる。
 付加軸機構14には、付加軸座標系C3が設定される。付加軸座標系C3は、可動部38に設置されたワークWの位置を自動制御するための制御座標系である。本実施形態においては、付加軸座標系C3は、そのy軸方向が軸線A2と平行となるように、付加軸機構14に対して設定されている。付加軸座標系C3とロボット座標系C1との位置関係は、キャリブレーションにより既知となっており、付加軸座標系C3の座標とロボット座標系C1の座標とは、既知の変換行列を介して、相互に変換可能となっている。
 制御装置50は、ロボット12及び付加軸機構14の動作を制御する。具体的には、制御装置50は、プロセッサ52、メモリ54、及びI/Oインターフェース56を有するコンピュータである。プロセッサ52は、CPU又はGPU等を有し、バス58を介してメモリ54及びI/Oインターフェース56と通信可能に接続されている。プロセッサ52は、後述する制御装置50の各機能を実現するための演算処理を行う。
 メモリ54は、RAM又はROM等を有し、各種データを一時的又は恒久的に記憶する。I/Oインターフェース56は、例えば、イーサネット(登録商標)ポート、USBポート、光ファイバコネクタ、又はHDMI(登録商標)端子等を有し、プロセッサ52からの指令の下、外部機器とデータを無線又は有線で通信する。上述の力センサ26、サーボモータ36及び42は、I/Oインターフェース56に無線又は有線で通信可能に接続されている。
 次に、制御装置50の機能について説明する。制御装置50は、付加軸機構14によってロボット12とワークWとを相対的に移動させつつ、回転するツール34をワークWに押し付けて該ワークWを加工する作業(すなわち、バリ取り)をロボット12に実行させる。本実施形態においては、ロボット12は、ツール34によって、ワークWの頂点Bから頂点Cまで、エッジDに沿って作業(バリ取り)を行うものとする。すなわち、エッジDは、ワークWの作業対象箇所となる。
 制御装置50は、ワークWに対する作業を実行する前の準備段階として、動作計画データPDを取得する。動作計画データPDは、作業対象箇所Dに沿ってツール34を移動させる動作をロボット12に実行させるためのものであって、該動作においてロボット12がツール34(又は、TCP)を位置決めすべき複数の目標位置TPのデータと、2つの目標位置TP及びTPn+1の間の移動経路MPのデータとを含む。
 図3に、作業対象箇所Dに対して設定される目標位置TP及び移動経路MP(n=1,2,3,・・・)を模式的に示す。動作計画データPDは、ロボット座標系C1における目標位置TPの位置データ、移動経路MPのデータ、及び、ロボット12が移動経路MPに沿ってツール34を移動させるときの速度V等を含む。
 一例として、目標位置TPの位置データ、及び移動経路MPのデータは、ワークWの作業対象箇所Dに沿ってツール34を移動させる動作を実機のロボット12に教示することによって、取得され得る(いわゆる、オンラインティーチング)。具体的には、まず、付加軸機構14は、ロボット12に対してワークWを基準位置RPに静止させる。この基準位置RPは、付加軸座標系C3のy軸方向の座標として表され得る。
 そして、オペレータは、例えば教示装置(いわゆる、教示ペンダント)又はタブレット端末装置等を用いてロボット12をジョグ動作させ、基準位置RPに静止した状態のワークWの作業対象箇所Dに沿ってツール34を頂点Bから頂点Cまで移動させる動作をロボット12に教示する。これにより、目標位置TPの位置データ、及び移動経路MPのデータを取得する。
 他の例として、目標位置TPの位置データ、及び移動経路MPのデータは、シミュレーション等によって取得することもできる(いわゆる、オフラインティーチング)。このシミュレーションにおいては、仮想空間に配置されたロボット12のモデル、付加軸機構14のモデル、及びワークWのモデルを用いて、オンラインティーチングと同様の教示を模擬的に実行することによって、目標位置TPの位置データ、及び移動経路MPのデータを取得できる。
 そして、オペレータは、作業の諸条件(サイクルタイム、ワークWの種類等)を勘案して、速度V等のパラメータを設定する。こうして、目標位置TP、移動経路MP及び速度Vのデータを含む動作計画データPDが生成される。制御装置50のプロセッサ52は、動作計画データPDを取得し、メモリ54に格納する。
 このように、本実施形態においては、動作計画データPDは、ロボット座標系C1において基準位置P0に静止されたワークWを基に生成される。よって、動作計画データPDは、ロボット12に、ロボット座標系C1にて静止したワークWの作業対象箇所Dに沿ってツール34を移動させる動作を実行させるものである。
 動作計画データPDを取得した後、プロセッサ52は、オペレータ、上位コントローラ、又はコンピュータプログラムから作業開始指令を受け付けると、ワークWに対する作業(バリ取り)のための動作フローを開始する。まず、プロセッサ52は、付加軸機構14によってワークWを基準位置RPに配置させるとともに、ロボット12によってツール34を目標位置TPに配置する。
 次いで、プロセッサ52は、ツール駆動部32を動作させてツール34を回転させる動作を開始する。また、プロセッサ52は、付加軸機構14によるワークWの送り動作を開始する。具体的には、プロセッサ52は、駆動機構40を動作させて可動部38を移動させ、これによりワークWを付加軸座標系C3のy軸プラス方向へ搬送する動作を開始する。これとともに、プロセッサ52は、動作計画データPDに従って、ロボット12によってツール34を作業対象箇所Dに沿って移動させる動作を開始する。
 具体的には、プロセッサ52は、動作計画データPDに含まれる目標位置TP及びTPの位置データと、目標位置TPから目標位置TPへの移動経路MPのデータとに基づいて、目標位置TPから目標位置TPまで移動経路MPに沿ってツール34(又はTCP)を移動させるための移動指令CAを生成する。
 その一方で、プロセッサ52は、付加軸機構14の動作の開始時点から付加軸機構14が移動させるワークWの付加軸移動量αを取得する。この付加軸移動量αは、例えば、プロセッサ52が付加軸機構14のサーボモータ42へ送信する移動指令CB(位置指令、速度指令等)であり得る。又は、付加軸移動量αは、移動指令CBから求められる物理量(距離等)であり得る。
 代替的には、付加軸移動量αは、サーボモータ42の回転を検出する回転検出器(エンコーダ、ホール素子等)のフィードバック(回転角度等)から取得される物理量であってもよいし、又は、可動部38の付加軸座標系C3のy軸方向への変位量を検出可能な変位センサによって検出される物理量であってもよい。このように、本実施形態においては、プロセッサ52は、付加軸機構14が移動させるワークWの付加軸移動量αを取得する付加軸移動量取得部60(図1)として機能する。
 そして、プロセッサ52は、ツール34を、付加軸座標系C3のy軸プラス方向へ、付加軸移動量αだけ移動させるための移動指令CCを生成する。そして、プロセッサ52は、動作計画データPDに基づいて生成した移動指令CAに、付加軸移動量αに基づいて生成した移動指令CCを加えることによって、移動指令CD(=移動指令CA+移動指令CC)を生成する。
 プロセッサ52は、生成した移動指令CDを、ロボット12の各サーボモータ36へ送信し、該移動指令CDに従ってロボット12によってツール34を動作させる。移動指令CDに従ってロボット12がツール34を移動させたときの移動ベクトルVAを、図4に模式的に示す。移動ベクトルVAは、移動指令CAによる、作業対象箇所Dに沿う方向のベクトルと、移動指令CCによる、付加軸移動量αの方向(つまり、付加軸座標系C3のy軸プラス方向)のベクトルの和に相当する。
 こうして、プロセッサ52は、移動指令CDに従ってロボット12を動作させ、付加軸機構14によるワークWの移動に追随してツール34を作業対象箇所Dに沿って移動させる。その結果、ツール34は、動作計画データPDに予め規定されていた目標位置TPから、付加軸移動量αに相当する距離だけ付加軸座標系C3のy軸プラス方向へずれるように補正された補正目標位置TP’に到達することになる。
 その後、プロセッサ52は、補正目標位置TP’(n≧3)に到達する毎に、以下のプロセスを繰り返し実行する。すなわち、ツール34が補正目標位置TP’に到達すると、プロセッサ52は、動作計画データPDに基づいて目標位置TPから目標位置TPn+1まで移動経路MPに沿ってツール34を移動させるための移動指令CAを生成する。
 一方、プロセッサ52は、付加軸移動量取得部60として機能して、ツール34を補正目標位置TPn-1’(n=2の場合は目標位置TP)から補正目標位置TP’まで移動させる間に付加軸機構14がワークWを移動させる付加軸移動量αを取得する。そして、プロセッサ52は、ツール34を、付加軸座標系C3のy軸方向へ、付加軸移動量αだけ移動させるための移動指令CCを生成する。そして、プロセッサ52は、動作計画データPDに基づいて生成した移動指令CAに、付加軸移動量αに基づいて生成した移動指令CCを加えることによって、移動指令CD(=移動指令CA+移動指令CC)を生成する。
 プロセッサ52は、生成した移動指令CDに従ってロボット12にツール34を移動させる。その結果、ツール34は、図4中の移動ベクトルVAに示すように、目標位置TPn+1から付加軸移動量Σαに相当する距離だけ付加軸座標系C3のy軸プラス方向へずれるように補正された補正目標位置TPn+1’に到達することになる。
 なお、プロセッサ52は、ツール34が補正目標位置TP’に到達したときに、付加軸移動量取得部60として機能して、ツール34を補正目標位置TPn-2’から補正目標位置TPn-1’まで移動させる間に付加軸機構14がワークWを移動させる付加軸移動量αn-1を取得してもよい。
 そして、プロセッサ52は、ツール34を、付加軸座標系C3のy軸方向へ、付加軸移動量αn-1だけ移動させるための移動指令CCn-1を生成してもよい。そして、プロセッサ52は、動作計画データPDに基づいて生成した移動指令CAに、付加軸移動量αn-1に基づいて生成した移動指令CCn-1を加えることによって、移動指令CD(=移動指令CA+移動指令CCn-1)を生成し、生成した該移動指令CD(CA+CCn-1)に従ってロボット12にツール34を移動させてもよい。
 このように、本実施形態においては、プロセッサ52は、動作計画データPD及び付加軸移動量αに基づいて、移動ベクトルVAに示すように付加軸機構14によるワークWの移動に追随してツール34を作業対象箇所Dに沿って移動させるための移動指令CDを生成する指令生成部62(図1)として機能する。
 ツール34を移動ベクトルVA(n=1,2,3,・・・)の方向へ移動させて作業を実行している間、プロセッサ52は、ロボット12がツール34をワークWの作業対象箇所Dに押し付ける押付力PFを予め定めた目標値PFに制御する力制御を実行する。ここで、本実施形態においては、プロセッサ52は、ツール34を補正目標位置TP’に到達させる周期で、ロボット12がツール34をワークWの作業対象箇所Dに押し付ける押付方向DRを決定する。
 押付方向DRを決定するために、プロセッサ52は、まず、ツール34が当接するワークWの作業対象箇所Dに沿う方向のベクトルVBを取得する。一例として、プロセッサ52は、ツール34を補正目標位置TP’に到達させたとき(又は、その前後)に、ベクトルVBを、動作計画データPDに予め規定された移動経路MPn-1(又はMP)の方向のベクトルとして、取得する。
 この移動経路MPn-1は、上述したように、ロボット座標系C1に対して静止したワークWの作業対象箇所Dに沿ってツール34を移動させる動作をロボット12に教示することによって得られたものであって、移動経路MPn-1の方向は、ツール34が補正目標位置TP’に到達するときに該ツール34が当接する作業対象箇所Dに沿う方向(略平行な方向)となる。この例の場合、プロセッサ52は、動作計画データPD(具体的には、移動経路MPn-1)に基づいてベクトルVBを取得している。
 他の例として、プロセッサ52は、ツール34を補正目標位置TP’に到達させたときに、該ツール34の移動ベクトルVAn-1と付加軸移動量αn-1とから、ベクトルVBを取得してもよい。ここで、プロセッサ52は、例えば、ロボット12のサーボモータ36の回転を検出する回転検出器(エンコーダ、ホール素子等)からのフィードバックから補正目標位置TPn-1’及びTP’のロボット座標系C1における座標を取得し、これら座標から移動ベクトルVAn-1を求めることができる。
 また、プロセッサ52は、付加軸機構14がワークWを付加軸移動量αn-1だけ移動させた移動ベクトルαn-1を求める。この移動ベクトルαn-1は、例えば、付加軸機構14がワークWを付加軸移動量αn-1だけ移動させるときにプロセッサ52がサーボモータ42へ送信する移動指令CBn-1、又は、サーボモータ42の回転検出器のフィードバックから求めることができる。
 そして、プロセッサ52は、ツール34の移動ベクトルVAn-1から、付加軸移動量αn-1の移動ベクトルαn-1を減算することによって、ベクトルVB(=VAn-1-αn-1)を求める。この例の場合、プロセッサ52は、付加軸移動量αn-1に基づいてベクトルVBを取得している。
 以上のように取得されたベクトルVBは、移動指令CDn-1に従ってロボット12が移動させたツール34の移動ベクトルVAn-1に対し、付加軸移動量αn-1に応じて傾斜する。このように、本実施形態においては、プロセッサ52は、動作計画データPD又は付加軸移動量αn-1に基づいてベクトルVBを取得するベクトル取得部64(図1)として機能する。
 次いで、プロセッサ52は、取得したベクトルVBを用いて押付方向DRを決定する。具体的には、プロセッサ52は、ベクトルVBに既知の回転ベクトルRVを乗算することによって、ベクトルVBに対し、ワークWの内方へ向かう方向へ、所定の角度θで傾斜するベクトルを求め、該ベクトルの方向を押付方向DRとして決定する。なお角度θは、回転ベクトルRVのパラメータを変更することによって任意に設定できる。
 図5に、ベクトルVB及び押付方向DRを模式的に示す。図5に示す例では、角度θ=90°に設定されている(すなわち、押付方向DRがベクトルVBと直交している)。このように、本実施形態においては、プロセッサ52は、ベクトルVBを用いて押付方向DRを決定する押付方向決定部66(図1)として機能する。
 そして、プロセッサ52は、ツール34を補正目標位置TP’から補正目標位置TPn+1’へ移動させる間、ロボット12によってツール34をワークWに対し、決定した押付方向DRへ押し付ける。一方、力センサ26は、この間にワークWからツール34に加えられる力Fを連続的に検出する。
 プロセッサ52は、指令生成部62として機能して、力センサ26から取得した力Fに基づいて、ツール34からワークWに加えられる押付力PFを目標値PFに制御するための力制御指令CEを生成する。そして、プロセッサ52は、上述の移動指令CDに加えて、力制御指令CEをロボット12の各サーボモータ36へ送信し、力制御指令CEに従ってロボット12の動作を制御する。
 これにより、ロボット12は、移動指令CDに従ってツール34を補正目標位置TP’から補正目標位置TPn+1’へ移動させつつ、力制御指令CEに従って該ツール34の位置を、例えば付加軸座標系C3のy軸方向へ変位させる。こうして、プロセッサ52は、補正目標位置TP’から補正目標位置TPn+1’へ移動させる間、押付力PFを目標値PFに一致させる力制御を実行する。
 なお、プロセッサ52は、ツール34を目標位置TPから補正目標位置TP’へ移動させる間も同様にして力制御を実行できることを理解されよう。ツール34を目標位置TPから補正目標位置TP’へ移動させる間の押付方向DRは、例えば移動経路MPの方向として、オペレータによって予め定められてもよい。
 以上のように、本実施形態においては、プロセッサ52は、動作計画データPD及び付加軸移動量αに基づいて移動指令CDを生成しているので、ツール34を、付加軸機構14によるワークWの移動に追随して作業対象箇所Dに沿って移動させることができる。この構成によれば、例えば大型のワークWを加工する場合において、ワークWを移動させながらツール34で加工を行うことができることにより、サイクルタイムの縮減を実現できる。
 これとともに、プロセッサ52は、作業時の作業対象箇所Dに沿う方向のベクトルVBを取得し、該ベクトルVBを用いて押付方向DRを決定している。ここで、仮に、移動ベクトルVAを基準として、ツール34の押付方向を、該移動ベクトルVAと直交する方向として設定した場合、該押付方向は、作業対象箇所Dに対して直交せずに、傾斜することになる。この場合、ツール34をワークWに対して適切に押し当てることができない。本実施形態によれば、作業時の作業対象箇所Dに沿う方向のベクトルVBを基準として押付方向DRを決定することから、作業対象箇所Dに対して押付方向DRを、例えば直交させるように(上述の角度θ=90°)、適切に設定できる。
 また、本実施形態の一例として、プロセッサ52は、上述のベクトルVBを、動作計画データPDに含まれる移動経路MPn-1(又はMP)の方向のベクトルとして取得する。この構成によれば、プロセッサ52は、ベクトルVBを容易且つ迅速に取得することができる。
 一方、本実施形態の他の例として、プロセッサ52は、ツール34の移動ベクトルVAn-1から、付加軸移動量αn-1の移動ベクトルαn-1を減算することによってベクトルVBを求める。ここで、プロセッサ52は、作業の間、サーボモータ36及び42の回転検出器から周期的にフィードバックを受信し、ロボット12の制御に用いる。そして、付加軸移動量αn-1、補正目標位置TPn-1’及びTP’は、このようなフィードバックから取得される。本実施形態によれば、通常動作として取得されるフィードバックを利用して、ベクトルVBを取得することができる。
 なお、上述の実施形態では、付加軸機構14がワークWを付加軸座標系C3のy軸プラス方向へ移動する場合について述べた。しかしながら、付加軸機構14がワークWを付加軸座標系C3のy軸マイナス方向へ移動する場合でも、上述した方法を用いて、移動指令CDの生成、ベクトルVBの取得、及び押付方向DRの決定を同様に行うことができることを理解されよう。
 なお、上述の実施形態においては、付加軸機構14がワークWをロボット12に対して移動させる場合について述べた。しかしながら、付加軸機構14は、ロボット12をワークWに対して移動させてもよい。このような形態を図6に示す。図6に示すロボットシステム10’においては、ロボット12(具体的には、ベース部16)が、付加軸機構14の可動部38の上に固定されている。なお、ロボットシステム10’のブロック図は、図1に示すロボットシステム10と同じである。
 ロボットシステム10’においては、ロボット座標系C1は、付加軸機構14が可動部38を移動させるのに応じて、付加軸座標系C3のy軸方向に移動する。ロボット座標系C1と付加軸座標系C3とは、ロボット座標系C1の原点の、付加軸座標系C3における位置に応じた変換行列を介して、相互に変換可能となっている。
 以下、ロボットシステム10’の制御装置50の機能について説明する。まず、制御装置50は、準備段階として、動作計画データPDを取得する。この動作計画PDは、付加軸機構14がワークWに対してロボット12を基準位置RPに静止させたときに該ワークWの作業対象箇所Dに沿ってツール34を移動させる動作をロボット12に教示することによって生成され、目標位置TP、移動経路MP及び速度V(n=1,2,3・・・)のデータを含む。
 作業開始時点において、プロセッサ52は、付加軸機構14によってロボット12を基準位置RPに配置させるとともに、ロボット12によってツール34を目標位置TPに配置させる。作業開始後、プロセッサ52は、付加軸機構14によってロボット12(つまり、ロボット座標系)を付加軸座標系C3のy軸プラス方向へ移動する動作を開始するとともに、動作計画データPDに従って、ツール34を目標位置TPから目標位置TPまで移動経路MPに沿ってツール34(又はTCP)を移動させるための移動指令CAを生成する。
 一方、プロセッサ52は、付加軸移動量取得部60として機能して、付加軸機構14の動作の開始時点から付加軸機構14が移動させるワークWの付加軸移動量β(図7)を取得する。この付加軸移動量βは、上述の実施形態と同様に、サーボモータ42への移動指令(又は該移動指令から求められる物理量)、若しくは、回転検出器又は変位センサ等の検出値から取得される物理量であり得る。
 ここで、本実施形態においては、プロセッサ52は、取得した付加軸移動量βの方向(つまり、符号)を反転させた付加軸移動量-βに従ってツール34を移動させるための移動指令CCを生成する。そして、プロセッサ52は、動作計画データPDに基づいて生成した移動指令CAに、付加軸移動量-βに基づいて生成した移動指令CCを加えることによって、移動指令CD(=移動指令CA+移動指令CC)を生成する。プロセッサ52は、生成した移動指令CDを、ロボット12の各サーボモータ36へ送信し、該移動指令CDに従ってロボット12によってツール34を動作させる。
 このときのツール34の移動ベクトルVAを、図7に模式的に示す。図7に示す移動ベクトルVAは、移動指令CAによる、作業対象箇所Dに沿う方向のベクトルと、移動指令CCによる、付加軸移動量-βの方向(つまり、付加軸座標系C3のy軸マイナス方向)のベクトルの和に相当する。換言すれば、移動ベクトルVAは、移動指令CAのベクトルから、付加軸移動量βのベクトルを減算したものである。
 こうして、プロセッサ52は、移動指令CDに従ってロボット12を動作させて、ツール34を、付加軸機構14によるワークWの移動に追随して作業対象箇所Dに沿って移動させ、補正目標位置TP’に到達させる。補正目標位置TP’は、この時点(つまり、付加軸機構14によりロボット座標系C1が移動された時点)でのロボット座標系C1における目標位置TPに対し、付加軸移動量-βに相当する距離だけ付加軸座標系C3のy軸マイナス方向へずれている。
 プロセッサ52は、補正目標位置TP’に到達する周期で、このプロセスを繰り返し実行する。すなわち、補正目標位置TP’に到達すると、プロセッサ52は、動作計画データPDに基づいて移動指令CAを生成する一方、付加軸移動量取得部60として機能して、ツール34を補正目標位置TPn―1’から補正目標位置TP’まで移動させる間に付加軸機構14が移動させるワークWの付加軸移動量βを取得する。
 そして、プロセッサ52は、取得した付加軸移動量βの符号を反転させた付加軸移動量-βだけツール34を移動させるための移動指令CCを生成し、移動指令CAに移動指令CCを加えることによって移動指令CDを生成する。プロセッサ52は、生成した移動指令CDに従ってロボット12にツール34を移動させる。
 その結果、ツール34は、図7中の移動ベクトルVAに示すように、補正目標位置TPn+1’に到達する。補正目標位置TPn+1’は、この時点でのロボット座標系C1における目標位置TPn+1に対し、付加軸移動量Σ(-β)に相当する距離だけ付加軸座標系C3のy軸マイナス方向へずれている。
 一方、プロセッサ52は、上述の実施形態と同様の方法で、ツール34を補正目標位置TP’に到達させる周期で、ロボット12がツール34をワークWの作業対象箇所Dに押し付ける押付方向DRを決定する。具体的には、プロセッサ52は、ベクトル取得部64として機能して、作業対象箇所Dに沿う方向のベクトルVBを取得する。一例として、プロセッサ52は、ベクトルVBを、移動経路MPn-1(又はMP)の方向のベクトルとして取得する。
 他の例として、プロセッサ52は、ツール34の移動ベクトルVAn-1に、付加軸移動量βn-1の移動ベクトルβn-1を加算する(換言すれば、移動ベクトルVAn-1から付加軸移動量-βn-1の移動ベクトルを減算する)ことによって、ベクトルVB(=VAn-1+βn-1)を求める。このベクトルVBは、移動指令CDn-1に従ってロボット12が移動させたツール34の移動ベクトルVAn-1に対し、付加軸移動量βn-1に応じて傾斜している。
 そして、プロセッサ52は、上述の実施形態と同様に、押付方向決定部66として機能して、取得したベクトルVBを用いて押付方向DRを決定する。プロセッサ52は、ツール34を補正目標位置TP’から補正目標位置TPn+1’へ移動させる間、ロボット12によってツール34をワークWに対し、決定した押付方向DRへ押し付けて、押付力PFを目標値PFに制御する力制御を実行する。
 本実施形態によれば、上述の実施形態と同様に、動作計画データPD及び付加軸移動量αに基づいて移動指令CDを生成することで、ツール34を、付加軸機構14によるロボット12の移動に追随して、作業対象箇所Dに沿って移動させることができ、これによりサイクルタイムの縮減を実現できるとともに、ベクトルVBを用いて押付方向DRを決定することで、作業対象箇所Dに対して押付方向DRを適切に設定できる。
 なお、複数の付加軸機構によって、ロボット12及びワークWをそれぞれ独立して移動させてもよい。このような形態を図8及び図9に示す。図8及び図9に示すロボットシステム10”は、ロボット12、付加軸機構14A及び14B、及び制御装置50を備える。付加軸機構14A及び14Bは、それぞれ、図2及び図6に示す付加軸機構14と同じ構成を有する。
 ロボットシステム10”の制御装置50(具体的には、プロセッサ52)は、付加軸機構14Aの付加軸座標系C3_Aを基準として駆動機構40Aを駆動し、可動部38Aの上に設置されたワークを軸線A2_Aに沿って搬送するとともに、付加軸機構14Bの付加軸座標系C3_Bを基準として駆動機構40Bを駆動し、可動部38Bの上に設置されたロボット12を軸線A2_Bに沿って搬送する。
 本実施形態においては、プロセッサ52は、作業時に、付加軸機構14AによってワークWを移動させるとともに、付加軸機構14Bによってロボット12を移動させる。この場合においても、図2に示す実施形態、及び図6に示す実施形態で説明した方法を組み合わせることによって、プロセッサ52は、移動指令CDの生成、ベクトルVBの取得、及び押付方向DRの決定を行うことができる。
 具体的には、プロセッサ52は、付加軸移動量取得部60として機能して、付加軸機構14AがワークWを付加軸座標系C3_Aのy軸方向へ移動させる付加軸移動量αに、付加軸機構14Bがロボット12を付加軸座標系C3_Bのy軸方向へ移動させる付加軸移動量βの符号を反転させた付加軸移動量-βを加算する(換言すれば、付加軸移動量αから付加軸移動量βを減算する)ことで、合成付加軸移動量γ=α-βを算出する。プロセッサ52は、この合成付加軸移動量γに基づいて、移動指令CDの生成、ベクトルVBの取得、及び押付方向DRの決定を行うことができる。
 なお、上述の実施形態においては、動作計画データPDに含まれる目標位置TPが、ロボット12を教示することによって予め得られる場合について説明した。しかしながら、複数の目標位置TPの少なくとも1つは、ロボット12の教示によって予め得られた目標位置から算出される補間目標位置であってもよい。
 例えば、目標位置TPと目標位置TPn+3とが、ロボット12の教示によって予め得られたものである一方、その間にある目標位置TPn+1と目標位置TPn+2とが、目標位置TP及び目標位置TPn+3から自動で算出される補間目標位置であってもよい。このように教示された目標位置から求められる補間目標位置の位置データも、動作計画データPDに含まれる。
 また、上述の実施形態においては、ツール34が、バリ取りツールであり、ロボット12がワークWに対してバリ取り作業を行う場合について述べた。しかしながら、これに限らず、ツール34は、ワークWに押し付けられて所定の作業を行う如何なるタイプのツール(例えば、切削工具)であってもよい。
 また、付加軸機構14は、ベルトコンベアに限らず、例えば、可動なワークテーブル、及び該ワークテーブルを所定の方向へ駆動するボールねじ機構を備えるワーク搬送装置、又は、レール、及び該レール上を走行する台車を備える走行装置等、ワークWとロボット12とを相対的に移動可能な如何なるタイプの機構であってもよい。
 また、上述の実施形態においては、1つのコンピュータである制御装置50が、ロボット12及び付加軸機構14を制御する場合について述べた。しかしながら、ロボットシステム10、10’又は10”は、ロボット12を制御する第1の制御装置50Aと、付加軸機構14を制御する第2の制御装置50Bとを備えてもよい。この場合において、サーボモータ42の回転検出器は、第1の制御装置50Aに接続され、フィードバック(回転角度等)を第1の制御装置50Aに供給してもよい。
 この場合、制御装置50A及び50Bは、互いに通信可能に接続され、互いに通信しつつ、上述した各種機能を実行する。この場合において、制御装置50A及び50Bのいずれか一方が、付加軸移動量取得部60、指令生成部62、ベクトル取得部64、及び押付方向決定部66として機能してもよい。
 代替的には、第1の制御装置50Aが、付加軸移動量取得部60、指令生成部62、ベクトル取得部64、及び押付方向決定部66の少なくとも1つの機能を果たす一方、第2の制御装置50Bが、付加軸移動量取得部60、指令生成部62、ベクトル取得部64、及び押付方向決定部66のうち、第1の制御装置50Aとは別の機能を果たしてもよい。以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
 10,10’,10”  ロボットシステム
 12  ロボット
 14  付加軸機構
 26  力センサ
 50,50A,50B  制御装置
 52  プロセッサ
 60  付加軸移動量取得部
 62  指令生成部
 64  ベクトル取得部
 66  押付方向決定部

Claims (8)

  1.  ロボットとワークとを付加軸機構によって相対的に移動させつつ前記ロボットのツールをワークに押し付けて該ワークに対する作業を実行する制御装置であって、
     前記付加軸機構が前記ロボット又は前記ワークを移動させる付加軸移動量を取得する付加軸移動量取得部と、
     前記ワークの作業対象箇所に沿って前記ツールを移動させる動作を前記ロボットに実行させるための動作計画データと前記付加軸移動量とに基づいて、前記付加軸機構による前記ロボット又は前記ワークの移動に追随して前記ロボットに前記ツールを前記作業対象箇所に沿って移動させるための移動指令を生成する指令生成部と、
     前記動作計画データ又は前記付加軸移動量に基づいて、前記移動指令に従って前記ロボットが移動させる前記ツールの移動ベクトルに対し前記付加軸移動量に応じて傾斜する、前記作業対象箇所に沿う方向のベクトルを取得するベクトル取得部と、
     前記ベクトル取得部が取得した前記ベクトルを用いて、前記作業の間に前記ロボットが前記ツールを前記ワークに押し付ける押付方向を決定する押付方向決定部と、を備える、制御装置。
  2.  前記動作計画データは、前記動作において前記ロボットが前記ツールを位置決めすべき複数の目標位置と、2つの前記目標位置の間の移動経路とを含み、
     前記ベクトル取得部は、前記ベクトルとして、前記移動経路の方向のベクトルを取得する、請求項1に記載の制御装置。
  3.  前記複数の目標位置の位置データ、及び前記移動経路のデータは、前記付加軸機構が前記ロボット又は前記ワークを静止させた状態で前記動作を前記ロボットに教示することによって取得される、請求項2に記載の制御装置。
  4.  前記ベクトル取得部は、前記ツールの前記移動ベクトルから、前記付加軸機構が前記ロボット又は前記ワークを前記付加軸移動量だけ移動させた移動ベクトルを減算することによって、前記ベクトルを求める、請求項1に記載の制御装置。
  5.  前記押付方向決定部は、前記ベクトルと直交する方向を前記押付方向として決定する、請求項1~4のいずれか1項に記載の制御装置。
  6.  前記指令生成部は、前記ロボットが前記ツールを前記ワークに対し、前記押付方向決定部が決定した前記押付方向へ押し付ける押付力を予め定めた目標値に制御するための力制御指令をさらに生成する、請求項1~5のいずれか1項に記載の制御装置。
  7.  ツールを有するロボットと、
     前記ロボットとワークとを相対的に移動させる付加軸機構と、
     請求項1~6のいずれか1項に記載の制御装置と、を備える、ロボットシステム。
  8.  ロボットとワークとを付加軸機構によって相対的に移動させつつ前記ロボットのツールをワークに押し付けて該ワークに対する作業を実行する方法であって、
     前記付加軸機構が前記ロボット又は前記ワークを移動させる付加軸移動量を取得し、
     前記ワークの作業対象箇所に沿って前記ツールを移動させる動作を前記ロボットに実行させるための動作計画データと前記付加軸移動量とに基づいて、前記付加軸機構による前記ロボット又は前記ワークの移動に追随して前記ロボットに前記ツールを前記作業対象箇所に沿って移動させるための移動指令を生成し、
     前記動作計画データ又は前記付加軸移動量に基づいて、前記移動指令に従って前記ロボットが移動させる前記ツールの移動ベクトルに対し前記付加軸移動量に応じて傾斜する、前記作業対象箇所に沿う方向のベクトルを取得し、
     取得した前記ベクトルを用いて、前記作業の間に前記ロボットが前記ツールを前記ワークに押し付ける押付方向を決定する、方法。
PCT/JP2021/019650 2020-05-28 2021-05-24 ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法 WO2021241512A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202180037531.6A CN115666879A (zh) 2020-05-28 2021-05-24 使机器人执行对工件的作业的控制装置、机器人系统以及控制方法
JP2022526536A JP7414987B2 (ja) 2020-05-28 2021-05-24 ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法
US17/927,062 US20230202039A1 (en) 2020-05-28 2021-05-24 Control device, robot system, and control method for causing robot to execute work on workpiece
DE112021002976.2T DE112021002976T5 (de) 2020-05-28 2021-05-24 Steuervorrichtung, robotersystem und steuerverfahren zum veranlassen des roboters, arbeit am werkstück auszuführen

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020093562 2020-05-28
JP2020-093562 2020-05-28

Publications (1)

Publication Number Publication Date
WO2021241512A1 true WO2021241512A1 (ja) 2021-12-02

Family

ID=78744386

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/019650 WO2021241512A1 (ja) 2020-05-28 2021-05-24 ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法

Country Status (5)

Country Link
US (1) US20230202039A1 (ja)
JP (1) JP7414987B2 (ja)
CN (1) CN115666879A (ja)
DE (1) DE112021002976T5 (ja)
WO (1) WO2021241512A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116749150B (zh) * 2023-08-21 2023-12-12 南京埃斯顿自动化股份有限公司 一种多轴机器人系统运动规划方法、电子设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778021A (ja) * 1993-06-23 1995-03-20 Fanuc Ltd ロボットの位置教示方法及びロボット制御装置
JP2012020348A (ja) * 2010-07-12 2012-02-02 Ihi Corp ロボットによるバリ除去方法
WO2018088199A1 (ja) * 2016-11-11 2018-05-17 セイコーエプソン株式会社 ロボット制御装置、ロボット、ロボットシステム、及び、ロボット制御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5845212B2 (ja) 2013-06-28 2016-01-20 ファナック株式会社 視覚センサ及び力センサを備えたバリ取り装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778021A (ja) * 1993-06-23 1995-03-20 Fanuc Ltd ロボットの位置教示方法及びロボット制御装置
JP2012020348A (ja) * 2010-07-12 2012-02-02 Ihi Corp ロボットによるバリ除去方法
WO2018088199A1 (ja) * 2016-11-11 2018-05-17 セイコーエプソン株式会社 ロボット制御装置、ロボット、ロボットシステム、及び、ロボット制御方法

Also Published As

Publication number Publication date
US20230202039A1 (en) 2023-06-29
JP7414987B2 (ja) 2024-01-16
JPWO2021241512A1 (ja) 2021-12-02
DE112021002976T5 (de) 2023-03-09
CN115666879A (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
KR940003204B1 (ko) 제어로봇
JP5236596B2 (ja) 加工ロボットシステム
TWI630081B (zh) Direct teaching method of robot
JP7314475B2 (ja) ロボット制御装置、及び、ロボット制御方法
JP6342935B2 (ja) 揺動切削を行う工作機械のサーボ制御装置、制御方法及びコンピュータプログラム
JP6457432B2 (ja) 揺動切削を行う工作機械のサーボ制御装置、制御方法及びコンピュータプログラム
CN107088878B (zh) 计算扫描空间的机器人的模拟装置
US10625420B2 (en) Machining system
TW201718204A (zh) 機器人教示方法及機器臂控制裝置
CN109954955B (zh) 机器人系统
CN109382839B (zh) 机器人系统以及机器人控制装置
US20050027398A1 (en) Articulated robot
WO2014123054A1 (ja) ロボット制御装置及びロボット制御方法
JP2005071016A (ja) 数値制御装置
WO2021241512A1 (ja) ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法
JP4396553B2 (ja) ロボット制御装置,コンピュータプログラム
US11597083B2 (en) Robot apparatus, robot system, control method of robot apparatus, product manufacturing method using robot apparatus, and storage medium
JP7042925B2 (ja) ワーク自動搬送機
KR20150112395A (ko) 로봇의 관절각 산출 시스템 및 그 방법
CN114559416A (zh) 机械手控制方法、装置、电子设备和存储介质
JP7070114B2 (ja) ロボット制御装置及びロボット制御方法
JP7035467B2 (ja) 加工装置
JP7396829B2 (ja) ロボット座標系を設定する装置、ロボット制御装置、ロボットシステム、及び方法
JP6985563B1 (ja) 数値制御装置
JP3576421B2 (ja) 工作機のワーク姿勢制御方法

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022526536

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 21813579

Country of ref document: EP

Kind code of ref document: A1