WO2023135762A1 - 制御装置、教示装置、及び機械システム - Google Patents

制御装置、教示装置、及び機械システム Download PDF

Info

Publication number
WO2023135762A1
WO2023135762A1 PCT/JP2022/001182 JP2022001182W WO2023135762A1 WO 2023135762 A1 WO2023135762 A1 WO 2023135762A1 JP 2022001182 W JP2022001182 W JP 2022001182W WO 2023135762 A1 WO2023135762 A1 WO 2023135762A1
Authority
WO
WIPO (PCT)
Prior art keywords
posture
target part
tool
control target
attitude
Prior art date
Application number
PCT/JP2022/001182
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 PCT/JP2022/001182 priority Critical patent/WO2023135762A1/ja
Priority to CN202280080087.0A priority patent/CN118338996A/zh
Priority to JP2023573764A priority patent/JPWO2023135762A1/ja
Priority to DE112022005340.2T priority patent/DE112022005340T5/de
Priority to TW111148237A priority patent/TW202333008A/zh
Publication of WO2023135762A1 publication Critical patent/WO2023135762A1/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

Definitions

  • the present invention relates to teaching technology and control technology for machines, and more particularly to a control device, a teaching device, and a mechanical system that suppress sudden changes in the posture of a control target part.
  • the positions and orientations of the parts to be controlled that have been taught are linked to motion commands.
  • the position of the previous action command is the starting position
  • the posture of the previous action command is the starting posture.
  • the difference between the positions of two consecutive action commands is the moving distance of the control target part
  • the difference between the postures of the two consecutive action commands is the amount of change in the posture of the control target part.
  • the motion command includes the movement speed of the control target part, the movement time of the control target part for one motion command is determined from the movement speed and the movement distance, and the posture change speed is automatically determined from the movement time and the posture change amount. determined
  • the instructor can specify the movement speed of the control target part, but cannot specify the posture change speed of the control target part.
  • Figs. 15A to 15C are explanatory diagrams explaining the problems of conventional attitude teaching.
  • FIG. 15A there are three consecutive teaching points P1 to P3 on the movement trajectory of the tool, and the distance between teaching points P1 and P2 is three times the distance between teaching points P2 and P3.
  • the amount of change in the tool posture between the teaching points P1 and P2 is three times the amount of change in the tool posture between the teaching points P2 and P3.
  • the tool posture is taught such that the amount of change in the tool posture between the teaching point P2 and the teaching point P3 is equal to or greater than the posture variation between the teaching point P1 and the teaching point P2.
  • the speed of change in posture between teaching points P2 and P3 is rapidly accelerated compared to the speed of change in posture between teaching points P1 and P2, as shown in FIG. , paint quality, deburring quality, sealing quality, cutting quality, polishing quality and other work quality deterioration.
  • Patent Document 1 in a tool path correction device for machining using a tool, the ratio of a tool angle change amount AC5 to a tool movement amount D5 for adjacent command points CP5 and CP6 on the tool movement path is described.
  • AC5/D5 is calculated, and when the ratio AC5/D5 of the calculated tool angle change amount AC5 is equal to or greater than the threshold value, the portion EP5, which is the combination of the command points CP5 and CP6 in the tool movement path, is corrected. It is described that it is determined to be a target.
  • Patent Document 3 the posture of a tool attached to the tip of an industrial robot is calculated so as to correspond to a vertical direction vector perpendicular to the work surface at each teaching point, and the calculated posture of the tool is indefinite. is detected, the detected teaching point is set as a singular point, and the posture of the tool at the singular point is recalculated to determine the posture of the tool at each teaching point.
  • Patent Document 4 an angle formed by a line segment extending from teaching point P ⁇ 1 on the upstream side of the moving path to teaching point P where the speed should be set and a line segment extending from teaching point P to teaching point P+1 on the downstream side
  • is large
  • the speed vP is reduced to the first condition speed v1
  • the posture of the teaching point P greatly changes from the posture of the robot at the teaching point P ⁇ 1 on the upstream side of the movement path
  • One aspect of the present disclosure is an attitude adjustment unit that adjusts the attitude of the control target part in the motion trajectory of the control target part based on the reference information of the attitude of the control target part of the machine, and the machine operation based on the adjusted attitude. and a control unit for controlling the posture adjustment unit using at least one of a reference point and a reference line as reference information.
  • Another aspect of the present disclosure includes an attitude adjustment unit that adjusts the attitude of the control target part in the motion trajectory of the control target part based on the reference information of the attitude of the control target part of the machine, and the attitude adjustment unit uses the reference information as the reference information.
  • a teaching device is provided that uses at least one of a point and a reference line.
  • Another aspect of the present disclosure includes a machine, an attitude adjustment unit that adjusts the attitude of the controlled part in the motion trajectory of the controlled part based on the reference information of the attitude of the controlled part of the machine, and a controller for controlling the operation of the machine, wherein the attitude adjuster uses at least one of a reference point and a reference line as reference information.
  • the difference in attitude change speed of the controlled part for each operation command is automatically reduced, and the controlled part of the machine changes at a substantially constant attitude change speed. .
  • the controlled part of the machine changes at a substantially constant attitude change speed.
  • FIG. 10 is an explanatory diagram illustrating an example of work for performing posture adjustment according to a reference point;
  • FIG. 10 is a top view of the tool before and after attitude adjustment according to the reference point;
  • FIG. 4 is a top view of a tool showing an example of posture correction amounts according to reference points;
  • It is a figure which shows an example of the attitude
  • FIG. 10 is an explanatory diagram illustrating an example of work for adjusting the posture according to the reference line;
  • FIG. 10 is a top view of the tool whose attitude is adjusted according to the reference line;
  • FIG. 10 is an explanatory diagram illustrating an example of work for adjusting the posture according to the reference line;
  • FIG. 10 is a top view of the tool whose attitude is adjusted according to the reference line;
  • FIG. 4 is a perspective view of a tool showing an example of posture correction amounts according to a reference line
  • FIG. 5 is a top view of the tool showing an example of posture correction amounts according to the reference line
  • It is a figure which shows an example of the attitude
  • It is a flowchart which shows an example of the posture adjustment method of 1st embodiment.
  • It is a functional block diagram of the mechanical system of the second embodiment.
  • It is a flowchart which shows an example of the posture adjustment method of 2nd embodiment.
  • It is a functional block diagram of the mechanical system of the third embodiment.
  • It is an explanatory view explaining a problem of conventional attitude teaching.
  • It is an explanatory view explaining a problem of conventional attitude teaching.
  • It is an explanatory view explaining a problem of conventional attitude teaching.
  • It is an explanatory view explaining a problem of conventional attitude teaching.
  • FIG. 1 is a configuration diagram of a mechanical system 1 of the first embodiment.
  • a machine system 1 includes a machine 2 and a control device 3 that controls the operation of the machine 2 .
  • the machine system 1 also includes, although not essential, a teaching device 4 for teaching the operation of the machine 2 .
  • the machine 2, the control device 3, and the teaching device 4 are communicatively connected to each other via wires or wirelessly.
  • the machine 2 is composed of, but not limited to, an articulated robot, and in other embodiments may be composed of other industrial robots such as single-joint robots, parallel-link robots, dual-arm robots, and the like. . Also, in another embodiment, the machine 2 may comprise other forms of robots such as humanoids rather than industrial robots. Alternatively, in yet another embodiment, the machine 2 is not a robot, but is composed of other industrial machines such as machine tools, construction machines, agricultural machines, or other forms of machines such as vehicles, aircraft, rockets, etc. There is also
  • the machine 2 comprises one or more interconnected links 10-16.
  • the links 11 to 16 are composed of rotary links that rotate around predetermined axes J1 to J6, but are not limited to this, and in other embodiments, linear links that move linearly along predetermined axes. may also be configured.
  • the zero link 10 is, for example, a base that is fixed at a predetermined position
  • the first link 11 is, for example, a swing barrel that is rotatably supported with respect to the zero link 10 around the first axis J1.
  • the second link 12 is, for example, an upper arm rotatably supported with respect to the first link 11 about a second axis J2 orthogonal to the first axis J1, and the third link 13 is, for example, a third arm parallel to the second axis J2.
  • the forearm is rotatably supported with respect to the second link 12 about the three axes J3.
  • the fourth link 14 to sixth link 16 are triaxial wrists attached to the third link 13, for example.
  • the fourth link 14 is, for example, a first wrist element supported rotatably with respect to the third link 13 about a fourth axis J4 orthogonal to the third axis J3, and the fifth link 15 is, for example, the fourth axis J4.
  • the machine 2 may be equipped with a visual sensor 17 that acquires an image of the workspace in which the work object, including the workpiece or tool, is present.
  • the visual sensor 17 is provided in the vicinity of the control target portion P (in this example, the tip of the tool 19) of the machine 2, but is not limited to this, and may be provided in a different location from the machine 2 in other embodiments.
  • the visual sensor 17 is composed of a two-dimensional camera, but is not limited to this, and may be composed of a three-dimensional camera in other embodiments.
  • the control device 3 or the teaching device 4 obtains the state of the work object, the position and orientation of the work object, the moving speed of the work object, the position and orientation of the controlled part P of the machine 2, the machine In some cases, parameters such as the movement speed of the control target part P of 2 are obtained.
  • the machine 2 may be equipped with a force detector 18 that detects the force acting on the controlled part P of the machine 2 .
  • the force detector 18 is composed of a force sensor that detects forces in three axial directions and moment components around three axes, but is not limited to this. may consist of Alternatively, in another embodiment, force detector 18 may not comprise a wrist-mounted force sensor, but may comprise one or more torque sensors provided at the junctions of links 11-16. . A torque sensor detects the torque acting on the links 11-16.
  • the control device 3 or the teaching device 4 obtains the magnitude and direction of force applied to the work object from the detection information of the force detector 18 (that is, force parameters), but is not limited to this, and in another embodiment, the work object Parameters such as the position and orientation of the object, the moving speed of the work object, the position and orientation of the control target portion P of the machine 2, and the movement speed of the control target portion P of the machine 2 may be obtained.
  • force parameters that is, force parameters
  • the work object Parameters such as the position and orientation of the object, the moving speed of the work object, the position and orientation of the control target portion P of the machine 2, and the movement speed of the control target portion P of the machine 2 may be obtained.
  • the machine 2 further comprises a tool 19 attached to the tip of the machine 2.
  • the tool 19 of this embodiment is a welding tool for welding workpieces, but is not limited to this. It may also consist of other forms of tools such as hemming tools.
  • the machine 2 of this embodiment performs a welding operation of welding the workpiece W1 to the workpiece W2 while moving the welding tool along a predetermined movement trajectory, but is not limited to this, and in another embodiment, it is held by a hand tool.
  • deburring or polishing by pressing against a tool such as a deburring tool or a polishing tool while moving the workpiece along a predetermined motion trajectory, or a coating tool, sealing tool, cutting tool, Various operations such as coating, sealing, cutting, and hemming of the work may be performed while moving the hemming tool or the like.
  • the machine 2 includes one or more actuators 20 that drive the links 11-16, and a motion detector 21 that detects motion of the actuators 20 (see FIG. 2).
  • Actuator 20 is provided near the connecting portion of links 11-16.
  • the actuator 20 is composed of an electric actuator including an electric motor, a speed reducer, etc., it is not limited to this, and in other embodiments, it may be composed of other actuators such as a hydraulic type and a pneumatic type.
  • the motion detector 21 is composed of an encoder, but is not limited to this, and in other embodiments, may be composed of other forms of motion detectors such as resolvers, Hall sensors, and the like.
  • the control device 3 or the teaching device 4 detects the motion including the position, velocity, acceleration, etc. of the actuator 20 from the detection information of the motion detector 21, but is not limited thereto.
  • the position and posture of the target part P, the movement speed of the control target part P of the machine 2, and the like may be obtained.
  • the controller 3 comprises, but is not limited to, a programmable logic controller (PLC) or the like, and in other embodiments may comprise other forms of processors, memories, input/output interfaces, etc. interconnected by buses. It may also consist of a computer device.
  • the control device 3 comprises a drive circuit for driving the actuator 20, but is not limited to this and in other embodiments the machine 2 may comprise a drive circuit for driving the actuator 20.
  • FIG. The controller 3 controls the operation of the machine 2 by driving the actuator 20 .
  • the control device 3 receives detection information from the visual sensor 17, the force detector 18, the motion detector 21, etc., and controls the operation of the machine 2 based on the detection information.
  • the control device 3 sets various coordinate systems such as a world coordinate system, a machine coordinate system, a flange coordinate system, a tool coordinate system, a camera coordinate system, and a user coordinate system. These coordinate systems are, for example, orthogonal coordinate systems.
  • the control device 3 has set a machine coordinate system C1, a tool coordinate system C2, and a user coordinate system C3.
  • the machine coordinate system C1 is fixed at a reference position of the machine 2, such as the base
  • the tool coordinate system C2 is fixed at a reference position of the tool 19, such as the tool center point (TP)
  • the user coordinate system C3 is fixed at an arbitrary position, such as the workpiece. It is fixed at the reference position of W2.
  • the control device 3 sets the origin of the tool coordinate system C2 (that is, the tool center point: TCP) to the control target portion P of the machine 2 (the tool 19 in this example). Therefore, the position and orientation of the control target portion P of the machine 2 (also referred to as the position and orientation of the machine 2) are expressed as the position and orientation of the tool coordinate system C2 in the machine coordinate system C1, but are not limited to this. In the embodiment, the position and orientation of the control target part P may be expressed as the position and orientation of the flange coordinate system in the machine coordinate system C1, or may be expressed as the tool coordinate system C2 in the user coordinate system C3. be.
  • the control device 3 controls the operation of the machine 2 according to the motion program created by the teaching device 4 .
  • the motion program includes a movement command for moving the controlled part P of the machine 2 to a teaching point that constitutes the motion trajectory T of the machine 2, a force control command for controlling the force applied to the work target, and a predetermined motion pattern for the machine 2 ( palletizing, depalletizing, etc.), conditional branch instructions for branching control instructions under predetermined conditions, and loop instructions for looping predetermined control instructions under predetermined conditions.
  • a movement command, a force control command, and an application command are examples of an operation command for operating the control target portion P.
  • the teaching device 4 is composed of a portable teach pendant communicably connected to the control device 3 by wire or wirelessly, but is not limited to this, and in another embodiment, a teaching operation directly attached to the control device 3. It may also consist of other forms of computer equipment such as a board, tablet, personal computer, or server equipment.
  • the teaching device 4 includes a processor, a memory, an input/output interface, a user interface, etc., which are interconnected by a bus.
  • the user interface consists of display devices such as a touch panel and a display, and input devices such as a keyboard, buttons and switches.
  • the teaching device 4 has programming software for creating an operation program for the machine 2 .
  • the teaching device 4 sends the created operation program to the control device 3 .
  • the controller 3 operates the machine 2 according to the operation program, and the machine 2 uses the tool 19 to perform the welding work of welding the first work W1 to the second work W2.
  • the posture of the tool 19 changes abruptly in work that utilizes the movement trajectory of the tool 19, such as painting work, deburring work, sealing work, cutting work, polishing work, and hemming work.
  • work quality may deteriorate. Therefore, the instructor teaches the posture of the tool 19 so that the posture of the tool 19 does not change suddenly.
  • the mechanical system 1 of the present disclosure adjusts the posture of the tool 19 in the motion trajectory of the tool 19 based on the reference information of the posture of the tool 19 .
  • the posture correction amount of the tool 19 in the movement trajectory of the tool 19 is calculated based on the reference information of the posture of the tool 19, and the posture correction amount is used in the motion program of the machine 2. corrects the posture information of the tool 19 that is
  • FIG. 2 is a functional block diagram of the mechanical system 1 of the first embodiment.
  • the machine 2 comprises one or more actuators 20 that drive the links and one or more motion detectors 21 that detect motion of the actuators 20 .
  • the teaching device 4 includes a user interface (UI) section 40 for teaching the operation of the machine 2 or checking the state of the machine 2 .
  • the sensor 5 is composed of various sensors (visual sensor 17, force detector 18, etc.) for detecting various information.
  • the control device 3 includes an attitude adjustment unit 30 that adjusts the attitude of the tool 19, and a storage unit 31 that stores various information such as an operation program 31a of the machine 2 and the position and attitude of the tool 19 used in the operation program 31a. , a control unit 32 that controls the operation of one or more actuators 20 (that is, the machine 2) according to the operation program 31a and the information detected by the operation detector 21 or the sensor 5 (such as the visual sensor 17 and the force detector 18).
  • the posture adjustment unit 30, the reference information setting unit 30a, and the posture correction amount calculation unit 30b are one or more programs or programs that are read and executed by a processor such as a PLC, a CPU (central processing unit), or an MPU (micro processing unit). Although it is composed of sections, it is not limited to this, and in another embodiment, it may be composed of one or more semiconductor integrated circuits.
  • the storage unit 31 is composed of memories such as RAM (random access memory), ROM (read only memory), and SSD (solid state drive).
  • the control unit 32 is composed of one or more programs or program sections that are read and executed by a processor such as a PLC, CPU, or MPU, but is not limited thereto, and in another embodiment, one or more semiconductor integrated circuits. or one or more drive circuits.
  • the posture adjustment unit 30 sets the standard information of the posture of the tool 19 based on various input information such as the UI unit 40, the motion detector 21, and the sensor 5 (the visual sensor 17, the force detector 18, etc.). and an attitude correction amount calculation unit 30b that calculates an attitude correction amount of the tool 19 in the motion trajectory of the tool 19 based on the set reference information.
  • the attitude adjustment unit 30 uses at least one of a reference point and a reference line as reference information for the attitude of the tool 19 .
  • the reference information setting unit 30a sets a reference point as the rotation center point of the tool 19 in the movement trajectory of the tool 19.
  • FIG. When the tool 19 moves along a curve while maintaining predetermined posture information, the reference information setting unit 30 a sets a reference line as the rotation center axis of the tool 19 in the movement trajectory of the tool 19 .
  • the reference information setting unit 30a sets the reference information for each teaching point or each motion section that constitutes the motion trajectory. Therefore, the reference information setting unit 30a associates and records the reference information for each teaching point constituting the motion trajectory of the tool 19 or for each motion section. In other words, the reference information setting unit 30a should switch and set the reference information for each teaching point constituting the motion trajectory of the tool 19 or for each motion section.
  • the attitude adjustment unit 30 adjusts the attitude of the tool 19 using the reference point as the rotation center point of the tool 19 on the movement trajectory of the tool 19 .
  • the posture correction amount calculator 30b calculates the posture correction amount for correcting the posture of the tool 19 in the direction of the straight line in which the posture vector of the tool 19 passes through the reference point and the position of the tool 19 on the motion trajectory of the tool 19 . More specifically, the posture correction amount calculator 30b calculates the position of the tool 19 on the motion trajectory of the tool 19, which is a correction rotation axis perpendicular to the plane on which the posture vector of the tool 19 before posture adjustment and the reference point exist. The posture vector of the tool 19 is rotated around the correction rotation axis passing through , and the posture correction amount is calculated so that the posture vector passes through the reference point.
  • the attitude adjustment unit 30 adjusts the attitude of the tool 19 using the reference line as the rotation center axis of the tool 19 in the movement trajectory of the tool 19 . That is, the posture correction amount calculator 30b calculates the posture correction amount for correcting the posture of the tool 19 in the direction in which the posture vector of the tool 19 passes through the position of the tool 19 on the motion trajectory of the tool 19 and intersects the reference line. More specifically, the posture correction amount calculator 30b rotates the posture vector of the tool 19 around a correction rotation axis that is parallel to the reference line and passes through the position of the tool 19 in the motion trajectory of the tool 19. , the posture correction amount for correcting the posture of the tool 19 in the direction in which the posture vector intersects the reference line is calculated.
  • the posture correction amount calculation unit 30b calculates the posture correction amount for each position of the tool 19 on the motion trajectory of the tool 19. Further, when the motion trajectory of the tool 19 is composed of a curve, a straight line, or a combination thereof, the attitude correction amount calculation unit 30b switches the reference information for each position of the tool 19 on the motion trajectory of the tool 19 or for each motion section. to calculate the posture correction amount.
  • the posture correction amount calculator 30b corrects the posture information of the tool 19 used in the motion program 31a based on the calculated posture correction amount. Note that the position information of the tool 19 used in the motion program 31a is not corrected by the posture correction amount calculator 30b.
  • the control unit 32 controls the operation of the machine 2 according to the operation program 31a using the corrected attitude of the tool 19. FIG.
  • the posture of the tool 19 is automatically adjusted based on the reference point, and when the tool 19 moves along the curve while maintaining predetermined posture information, , the posture of the tool 19 is automatically adjusted based on the reference line. Also, when the motion trajectory of the tool 19 is composed of curved lines, straight lines, or a combination thereof, the attitude of the tool 19 is automatically adjusted based on the combination of the reference point and the reference line.
  • FIG. 3 is an explanatory diagram for explaining an example of the work of adjusting the posture according to the reference point.
  • FIG. 3 shows a welding operation in which a cylindrical first work W1 is welded in a state perpendicular to a cylindrical second work W2. Since the machining line ML is composed of a curved line, the movement trajectory of the tool 19 is also composed of a curved line along the machining line ML.
  • the reference information setting unit 30a sets the reference point RP as the rotation center point of the tool 19 in the motion trajectory of the tool 19.
  • the reference point RP is set at the intersection of the center axis O1 of the first work W1 and the center axis O2 of the second work W2.
  • the attitude adjustment unit 30 adjusts the attitude of the tool 19 using the reference point RP as the rotation center point of the tool 19 on the movement trajectory of the tool 19 .
  • FIG. 4 is a top view of the tool 19 (shown in white) before attitude adjustment according to the reference point RP and the tool 19' (shown in black) after attitude adjustment.
  • the posture correction amount calculator 30b calculates the posture correction amount for correcting the posture of the tool 19 in the direction of the straight line L where the posture vector of the tool 19 passes through the reference point RP and the teaching points P1 to P3 forming the motion trajectory of the tool 19. calculate.
  • FIG. 5 is a top view of the tool 19 showing an example of the posture correction amount ⁇ according to the reference point RP.
  • the posture correction amount calculator 30b moves the tool 19 around the correction rotation axis CA which is perpendicular to the plane in which the posture vector of the tool 19 before posture adjustment and the reference point RP exist and which passes through the teaching point P1. is rotated, and the posture correction amount ⁇ at which the posture vector passes through the reference point RP is calculated. Since the attitude correction amount ⁇ is a one-dimensional rotation amount about the correction rotation axis CA, the teacher can easily imagine the attitude of the tool 19' after the attitude adjustment.
  • FIG. 6 is a diagram showing an example of the attitude adjustment screen 41 corresponding to the reference point RP.
  • the posture adjustment screen 41 is generated by the posture adjustment section 30 and displayed on the UI section 40 .
  • the attitude adjustment screen 41 has setting functions for a reference information type 42 , a reference information setting button 44 , an attitude adjustment mode 45 , an attitude correction amount record 46 , and a trajectory history table 47 .
  • the setting functions of the reference information type 42 and the reference information setting 44 are realized by the reference information setting section 30a, and the setting functions of the attitude adjustment mode 45, the attitude correction amount record 46, and the trajectory history table 47 are realized by the attitude correction amount calculation section 30b. be done.
  • the instructor sets the reference information type 42 to "reference point".
  • "1" which is the reference information number 43 for identifying the reference point RP, is automatically assigned to the reference information. That is, the reference information setting unit 30a is configured to set a plurality of reference points for one motion trajectory of the tool 19.
  • the teacher presses the reference information setting button 44 to display a reference information setting window (not shown), and sets the reference point RP in the reference information setting window.
  • Examples of methods for setting the reference point RP include the following methods. (1) The teacher inputs the position (X, Y, Z) of one point. The reference information setting unit 30a sets the input point as the reference point RP. (2) The teacher inputs the positions of two points (X, Y, Z). The reference information setting unit 30a sets the middle point between the two points as the reference point RP. (3) The teacher inputs the position and orientation (X, Y, Z, W, P, R) and distance of one point. The reference information setting unit 30a is specified from the position (X, Y, Z) on a straight line passing through the position (X, Y, Z) in the same direction as the orientation vector obtained from the orientation (W, P, R).
  • a point located at a distance of 1 is set as a reference point RP.
  • the teacher inputs the positions (X, Y, Z) and the distance of the two points.
  • the reference information setting unit 30a sets a point positioned at a specified distance from one point on the straight line connecting the two points as the reference point RP.
  • the teacher inputs the positions of three points (X, Y, Z).
  • the reference information setting unit 30a sets the center point of a circle passing through the three points as the reference point RP.
  • the teacher inputs four or more positions (X, Y, Z). After calculating the center point of the circle passing through the three points for each combination of the three points, the reference information setting unit 30a sets the average position of the center points of all the circles as the reference point RP.
  • the original information of the reference point RP information such as the position, attitude, distance, etc. of the point
  • the following method can be used.
  • the original information of the reference point RP is input by moving the model of the machine 2 in the virtual space using the teaching device 4 and touching the model of the work object with the tool 19 .
  • the machine 2 is actually moved to automatically input the original information of the reference point RP from the detection information of the motion detector 21 and the sensors 5 (visual sensor 17, force detector 18, etc.).
  • the teaching device 4 is used to move the model of the machine 2 in the virtual space, and the original information of the reference point RP is automatically input from the detection information of the model of the motion detector 21 .
  • the teacher sets the posture adjustment mode 45 to "valid".
  • the posture adjustment mode 45 is set to "valid"
  • the posture correction amount calculator 30b calculates the reference point RP and the positions and postures (X, Y, Z, W, P, R ) of the tool 19, and overwrites the information of the attitude (W, P, R) of the tool 19 used in the operation program 31a of the machine 2 based on the attitude correction amount ⁇ .
  • the attitude correction amount calculation unit 30b does not calculate the attitude correction amount ⁇ of the tool 19, and the control target part used in the operation program 31a of the machine 2 Information on P's attitude (W, P, R) is also not overwritten.
  • the teacher sets the posture correction amount record 46 to "invalid”. If the attitude correction amount record 46 is set to "invalid”, the attitude correction amount ⁇ is not recorded. can't.
  • the instructor sets the posture correction amount record 46 to "valid".
  • the posture adjustment unit 30 records the posture correction amount ⁇ for each position of the tool 19 on the motion trajectory of the tool 19 .
  • the posture adjustment unit 30 adjusts the overwritten posture (W, P, R ) information.
  • the instructor simply sets the reference point RP on the attitude adjustment screen 41 and sets the attitude adjustment mode 45 to "valid", and the attitude of the tool 19 is automatically adjusted based on the reference point RP. Therefore, even when the tool 19 moves along a curved line, the attitude of the tool 19 can be changed smoothly with simpler teaching than in the conventional art regardless of the instructor's experience. In other words, sudden changes in posture of the tool 19 are suppressed. As a result, the difference in work quality due to the difference in instructor's skill level is reduced.
  • FIG. 7 is an explanatory diagram illustrating an example of the work of adjusting the posture according to the reference line.
  • FIG. 7 shows a welding operation in which the S-shaped first work W1 is welded in a state perpendicular to the plate-shaped second work W2. Since the machining line ML is composed of a curved line, the movement trajectory of the tool 19 is also composed of a curved line along the machining line ML.
  • the posture of the tool 19 is previously taught at a predetermined angle ⁇ so that the tool 19 does not interfere with the first work W1 or the second work W2.
  • the reference information setting unit 30a sets the reference lines RL1 and RL2 as the rotation center axis of the tool 19 in the movement trajectory of the tool 19.
  • two reference lines RL1 and RL2 are set for each peak of the curve forming the machining line ML.
  • the attitude adjustment unit 30 adjusts the attitude of the tool 19 using the two reference lines RL1 and RL2 as the rotation center axes of the tool 19 in the motion trajectory of the tool 19 .
  • FIG. 8 is a top view of the tool 19 (shown in white) before attitude adjustment and the tool 19' (shown in black) after attitude adjustment according to the reference lines RL1 and RL2.
  • the posture correction amount calculator 30b calculates the posture correction amount for correcting the posture of the tool 19 in the direction in which the posture vector of the tool 19 passes through the teaching points P1 to P3 forming the motion trajectory of the tool 19 and intersects the first reference line RL1. Calculate Similarly, the posture correction amount calculator 30b corrects the posture of the tool 19 in the direction in which the posture vector of the tool 19 passes through the teaching points P4 to P7 forming the movement trajectory of the tool 19 and intersects the second reference line RL2. Posture correction amount is calculated.
  • FIG. 9A is a perspective view of the tool 19 showing an example of the posture correction amount ⁇ corresponding to the reference line RL1
  • FIG. 9B is a top view of the tool 19 showing an example of the posture correction amount ⁇ corresponding to the reference line RL1.
  • the posture correction amount calculator 30b rotates the posture vector of the tool 19 around the correction rotation axis CA1 which is parallel to the reference line RL1 and which passes through the teaching point P1 forming the movement trajectory of the tool 19.
  • a posture correction amount ⁇ for correcting the posture of the tool 19 in the direction in which the vector intersects the reference line RL1 is calculated. Since the attitude correction amount ⁇ is a one-dimensional rotation amount about the correction rotation axis CA1, the teacher can easily imagine the attitude of the tool 19' after the attitude adjustment.
  • FIG. 10 is a diagram showing an example of the attitude adjustment screen 41 corresponding to the reference lines RL1 and RL2.
  • the posture adjustment screen 41 is generated by the posture adjustment section 30 and displayed on the UI section 40 .
  • the attitude adjustment screen 41 has setting functions for a reference information type 42 , a reference information setting button 44 , an attitude adjustment mode 45 , an attitude correction amount record 46 , and a trajectory history table 47 .
  • the setting functions of the reference information type 42 and the reference information setting button 44 are realized by the reference information setting section 30a, and the setting functions of the attitude adjustment mode 45, the attitude correction amount record 46, and the trajectory history table 47 are realized by the attitude correction amount calculation section 30b. Realized.
  • the teacher sets the reference information type 42 to "reference line".
  • "2" which is the reference information number 43 for identifying the reference line RL2
  • the reference information setting unit 30a is configured to set a plurality of reference lines for one motion trajectory of the tool 19.
  • the reference line RL1 has already been set, and the teacher presses the reference information setting button 44 to display a reference information setting window (not shown), and sets the reference line RL2 in the reference information setting window. .
  • Examples of the method for setting the reference line RL2 include the following method. (1) The teacher inputs the position and orientation (X, Y, Z, W, P, R) of one point. The reference information setting unit 30a sets a straight line passing through the position and orientation (X, Y, Z, W, P, R) of the input point as the reference line RL2. (2) The teacher inputs the positions of two points (X, Y, Z). The reference information setting unit 30a sets a straight line passing through the two points as the reference line RL2.
  • the following method can be used.
  • the original information of the reference line RL2 is input by moving the model of the machine 2 in the virtual space using the teaching device 4 and touching the model of the work object with the tool 19 .
  • the machine 2 is actually moved to automatically input the original information of the reference line RL2 from the detection information of the motion detector 21 and the sensors 5 (visual sensor 17, force detector 18, etc.).
  • the teaching device 4 is used to move the model of the machine 2 in the virtual space, and the original information of the reference line RL2 is automatically input from the detection information of the model of the motion detector 21 .
  • the teacher sets the posture adjustment mode 45 to "valid".
  • the attitude adjustment mode 45 is set to "valid”
  • the posture correction amount calculation unit 30b corrects the posture of the tool 19 based on the reference line RL2 and the position and posture (X, Y, Z, W, P, R) of the teaching point P5 forming the motion trajectory of the tool 19. is calculated, and based on the calculated posture correction amount .theta., the information of the posture (W, P, R) of the control target portion P used in the operation program 31a of the machine 2 is overwritten.
  • the posture correction amount calculator 30b does not calculate the posture correction amount ⁇ of the tool 19, and the tool 19 used in the operation program 31a of the machine 2 is The attitude (W, P, R) information is also not overwritten.
  • the teacher sets the posture correction amount record 46 to "invalid”. If the attitude correction amount record 46 is set to "invalid”, the attitude correction amount ⁇ is not recorded. cannot be returned to
  • the instructor sets the posture correction amount record 46 to "valid".
  • the posture adjustment unit 30 records the posture correction amount ⁇ for each position of the tool 19 on the motion trajectory of the tool 19 .
  • the posture adjustment unit 30 adjusts the overwritten posture (W, P, R) information is restored.
  • the teacher simply sets the reference lines RL1 and RL2 on the attitude adjustment screen 41 and sets the attitude adjustment mode 45 to "valid", and the attitude of the tool 19 is automatically adjusted based on the reference lines RL1 and RL2. be done. Therefore, even when the tool 19 moves along the curve while maintaining the predetermined angle ⁇ , the posture of the tool 19 can be smoothly changed by teaching simpler than in the past, regardless of the instructor's experience. . In other words, sudden changes in posture of the tool 19 are suppressed. As a result, the difference in work quality due to the difference in instructor's skill level is reduced.
  • FIG. 11 is a flow chart showing an example of the posture adjustment method of the first embodiment.
  • step S10 reference information including at least one of a reference point and a reference is set. The setting of the reference information is performed on the attitude adjustment screen 41 described above.
  • step S11 the position and attitude of the tool 19 on the movement trajectory of the tool 19 are acquired during or after teaching the machine 2 .
  • the following method is available. (1) Using the teaching device 4 to actually move the machine 2, or using the teaching device 4 to move the model of the machine 2 in virtual space, and to , Z, W, P, R). (2) Manually input numerical values of the position and posture (X, Y, Z, W, P, R) of the tool 19 on the movement path of the tool 19 on the teaching device 4 . (3) Using the teaching device 4 to actually move the machine 2, or using the teaching device 4 to move the model of the machine 2 in the virtual space, etc.), the position and orientation (X, Y, Z, W, P, R) of the tool 19 on the motion trajectory of the tool 19 are automatically input. (4) Acquired from information on the position and orientation (X, Y, Z, W, P, R) of the tool 19 in the motion trajectory of the tool 19 used in the created motion program 31a.
  • step S12 the posture correction amount of the tool 19 is calculated from the reference information and the position and posture of the tool 19 on the motion trajectory of the tool 19.
  • step S13 the posture (W, P, R) information used in the operation program 31a is corrected based on the posture correction amount.
  • the posture correction amount may be recorded so that the overwritten posture (W, P, R) information of the operation program 31a can be restored.
  • the teacher's A sudden change in the attitude of the tool 19 can be suppressed with a simpler instruction than the conventional one, regardless of the empirical value. As a result, the difference in work quality due to the difference in instructor's skill level is reduced.
  • FIG. 12 is a functional block diagram of the machine system 1 of the second embodiment.
  • the posture adjustment unit 30 calculates the posture correction amount 31b of the tool 19 during operation of the machine 2, and the control unit 32 adjusts the tool 19 during operation of the machine 2 based on the posture correction amount 31b. It is different from the mechanical system 1 of the first embodiment in that 19 postures are corrected.
  • the posture adjustment unit 30 records the calculated posture correction amount 31b in the storage unit 31, and the control unit 32 adjusts the posture of the tool 19 based on the recorded posture correction amount 31b in subsequent operations of the machine 2. can be corrected.
  • the teacher sets at least one of the reference point and the reference line in advance on the posture adjustment screen 41 as shown in FIGS. Also, the teacher sets the attitude adjustment mode 45 to "valid".
  • the control unit 32 controls the motion of the machine 2 according to the motion program 31a and the detection information of the motion detector 21 or sensor 5 (visual sensor 17, force detector 18, etc.).
  • the posture correction amount calculation unit 30b calculates reference information including at least one of a reference point and a reference line, and the position and orientation (X, Y, Z, W, P, R) of the tool 19 on the motion trajectory of the tool 19. and the controller 32 corrects the posture of the tool 19 during operation of the machine 2 based on the posture correction amount 31b.
  • the attitude correction amount calculation unit 30b does not calculate the attitude correction amount 31b of the tool 19 while the machine 2 is operating, and the control unit 32 The posture of the tool 19 is not corrected immediately.
  • the instructor sets the attitude correction amount record 46 to "valid".
  • the posture correction amount calculation unit 30b calculates the posture correction amount 31b during the operation of the machine 2, records the posture correction amount 31b in the storage unit 31, and the control unit 32 corrects the attitude of the tool 19 during operation of the machine 2 based on the recorded past attitude correction amount 31b.
  • the attitude correction amount calculation unit 30b recalculates the attitude correction amount 31b of the tool 19 each time the machine 2 operates, and the control unit 32 recalculates the attitude correction amount 31b.
  • the posture of the tool 19 is corrected during operation of the machine 2 based on the posture correction amount 31b.
  • the control unit 32 will control the machine 2 based on the recalculated orientation correction amount 31b of the tool 19. Since the posture of the tool 19 is corrected during operation 2, sudden changes in the posture of the tool 19 are suppressed regardless of whether or not the position and posture of the tool 19 are changed by other functions.
  • FIG. 13 is a flow chart showing an example of the posture adjustment method of the second embodiment.
  • step S20 reference information including at least one of a reference point and a reference line is set. The setting of the reference information is performed on the attitude adjustment screen 41 described above.
  • step S21 the position and attitude of the tool 19 on the motion trajectory of the tool 19 are obtained while the machine 2 is operating.
  • the following method is available. (1) Acquired from information on the position and orientation (X, Y, Z, W, P, R) of the tool 19 used in the created operation program 31a. (2) The position and orientation (X, Y, Z, W, P, R) are automatically input.
  • step S22 the posture correction amount is calculated from the reference information and the position and posture of the tool 19 on the motion trajectory of the tool 19.
  • step S23 the posture (W, P, R) of the control target portion P is corrected during operation of the machine 2 based on the posture correction amount of the tool 19.
  • the posture correction amount may be recorded so that the posture of the tool 19 can be corrected during the subsequent operation of the machine 2 .
  • the posture adjusting method of the second embodiment since the posture (W, P, R) of the tool 19 is corrected during operation of the machine 2, the tool 19 is moved by another function while the operation program 31a is being executed. Even if the position and attitude are changed, sudden changes in the attitude of the tool 19 are suppressed. As a result, the difference in work quality due to the presence or absence of changes in the position and posture of the tool 19 due to other functions is reduced.
  • FIG. 14 is a functional block diagram of the mechanical system 1 of the third embodiment.
  • the controller 3 does not have the attitude adjustment section 30 for adjusting the attitude of the tool 19, but the teaching device 4 has the attitude adjustment section 30. It differs from the mechanical system 1 of the embodiment.
  • the teaching device 4 may further include a storage unit 31 that stores various information such as the operation program 31a and the posture correction amount 31b.
  • the posture adjustment method of the third embodiment is the same as either the posture adjustment method of the first embodiment or the posture adjustment method of the second embodiment, so description thereof will be omitted.
  • the difference in attitude change speed of the tool 19 for each operation command is automatically reduced, and the tool 19 changes at a substantially constant attitude change speed. That is, since the tool 19 is restrained from abrupt posture change, deterioration of work quality by the machine 2 can be restrained.
  • the sharpness of the control target region P can be changed by simpler teaching than in the past, regardless of the experience of the teacher. Attitude change is suppressed. As a result, the difference in work quality due to the difference in instructor's skill level is reduced.
  • the program or software described above may be provided by being recorded on a computer-readable non-temporary recording medium such as a CD-ROM, or may be provided via a wired or wireless WAN (wide area network) or LAN. It may be distributed and provided from a server device on a (local area network).
  • a computer-readable non-temporary recording medium such as a CD-ROM
  • WAN wide area network
  • LAN local area network

Landscapes

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

Abstract

制御装置は、機械の制御対象部位の姿勢の基準情報に基づいて制御対象部位の動作軌道における制御対象部位の姿勢を調整する姿勢調整部と、調整された姿勢に基づいて機械の動作を制御する制御部と、を備え、姿勢調整部は基準情報として基準点及び基準線の少なくとも一方を用いる。

Description

制御装置、教示装置、及び機械システム
 本発明は機械の教示技術及び制御技術に関し、特に制御対象部位の急激な姿勢変化を抑制する制御装置、教示装置、及び機械システムに関する。
 ロボット、工作機械等の機械の動作プログラムでは、教示された制御対象部位の位置及び姿勢を動作命令に紐付ける。ある動作命令は直前の動作命令の位置を開始位置とし、直前の動作命令の姿勢を開始姿勢とする。連続する二つの動作命令の位置の差が制御対象部位の移動距離になり、連続する二つの動作命令の姿勢の差が制御対象部位の姿勢変化量になる。また、動作命令は制御対象部位の移動速度を含んでおり、移動速度と移動距離から一つの動作命令に掛かる制御対象部位の移動時間が決定し、移動時間と姿勢変化量から姿勢変化速度が自動的に決定される。つまり教示者は制御対象部位の移動速度を指定できるが、制御対象部位の姿勢変化速度を指定できない。
 ところで、溶接ツール、塗装ツール、バリ取りツール、シーリングツール、切断ツール、研磨ツール、ヘム加工ツール等のように機械の制御対象部位として設定されるツールの動作軌道を活用した作業では、ツールの移動速度が一定であったとしても、ツールの姿勢が急激に変化すると作業品質が低下することがある。従って、教示者はツールの姿勢が急激に変化しないようにツールの姿勢を教示する。しかし、ツールの姿勢が滑らかに変化するように(つまりツールの姿勢変化速度が概ね一定になるように)ツールの姿勢を教示することは容易なことではない。
 図15A-図15Cは従来の姿勢教示の問題点を説明する説明図である。図15Aに示すようにツールの動作軌道上に三つの連続する教示点P1~P3があり、教示点P1と教示点P2の間の距離が教示点P2と教示点P3の間の距離の三倍ある場合に、ツールの移動速度を一定で教示したときは、教示点P1と教示点P2の間のツールの姿勢変化量が教示点P2と教示点P3の間のツールの姿勢変化量の三倍になるように姿勢を教示することでツールの姿勢変化速度を概ね一定にできる。
 しかし、図15Bに示すように教示点P2と教示点P3の間のツールの姿勢変化量が教示点P1と教示点P2の間の姿勢変化量と等しく又はより大きくなるようにツールの姿勢を教示してしまった場合、図15Cに示すように教示点P2と教示点P3の間の姿勢変化速度が教示点P1と教示点P2の姿勢変化速度に比べて急激に加速するため、機械による溶接品質、塗装品質、バリ取り品質、シーリング品質、切断品質、研磨品質等の作業品質の低下を引き起こす。
 図15Bから分かるように三次元空間上でツールの姿勢変化量が三倍になるように人の感覚で姿勢を教示するためには試行錯誤や経験が必要になる。熟練した教示者は教示点P1~P3の間のツールの姿勢変化速度が概ね一定になるようにツールの姿勢を教示できるが、特に経験の浅い教示者にとってツールの姿勢変化速度が概ね一定になるようにツールの姿勢を教示するのは容易なことではない。本願に関連する関連技術としては後述のものが公知である。
 特許文献1には、工具を用いた加工のための工具経路修正装置において、工具の移動経路において隣り合う指令点CP5と指令点CP6について、工具の移動量D5に対する工具の角度変化量AC5の割合AC5/D5を算出し、算出された工具の角度変化量AC5の割合AC5/D5が閾値以上である場合に工具の移動経路のうち指令点CP5と指令点CP6の組み合わせである箇所EP5を修正の対象と判定することが記載されている。
 特許文献2には、CADシステムから出力された教示データファイル内の最初の行の中の姿勢データ部分を変数Dpreに読み込み、続いて次の行の姿勢データ部分を変数Dcurに読み込み、両者Dpre、Dcurの差|Dpre-Dcur|の大きさを評価し、その差が基準量より大きければ、関節角が急激に変化したと見なして代替姿勢データへの変換を行って変数Dcurに代入し、変数Dpreの内容を変数Dcurの内容に更新することが記載されている。
 特許文献3には、産業用ロボットの先端に取着されたツールの姿勢を各教示点においてワークの面に垂直な面直方向ベクトルに対応するように演算し、演算されたツールの姿勢が不定となる教示点を検出し、検出した教示点を特異点とし、特異点におけるツールの姿勢を再演算して各教示点におけるツールの姿勢を決定することが記載されている。
 特許文献4には、移動経路の上流側の教示点P-1から速度を設定すべき教示点Pへ向かう線分と、教示点Pから下流側の教示点P+1に向かう線分との成す角度θが大きい場合に、速度vPを第1条件速度v1に低減させるか、又は、教示点Pの姿勢が移動経路の上流側の教示点P-1におけるロボットの姿勢から大きく変化した場合に、速度vPを第2条件速度に低減させることが記載されている。
国際公開第2020/021793号 特開平04-268607号公報 特開平09-254062号公報 特開平2015-123517号公報
 本発明は、従来の問題点に鑑み、機械の制御対象部位の急激な姿勢変化を抑制する技術を提供することを目的とする。
 本開示の一態様は、機械の制御対象部位の姿勢の基準情報に基づいて制御対象部位の動作軌道における制御対象部位の姿勢を調整する姿勢調整部と、調整された姿勢に基づいて機械の動作を制御する制御部と、を備え、姿勢調整部は基準情報として基準点及び基準線の少なくとも一方を用いる、制御装置を提供する。
 本開示の他の態様は、機械の制御対象部位の姿勢の基準情報に基づいて制御対象部位の動作軌道における制御対象部位の姿勢を調整する姿勢調整部を備え、姿勢調整部は基準情報として基準点及び基準線の少なくとも一方を用いる、教示装置を提供する。
 本開示の別の態様は、機械と、機械の制御対象部位の姿勢の基準情報に基づいて制御対象部位の動作軌道における制御対象部位の姿勢を調整する姿勢調整部と、調整された姿勢に基づいて機械の動作を制御する制御部と、を備え、姿勢調整部は基準情報として基準点及び基準線の少なくとも一方を用いる、機械システムを提供する。
 本開示のいずれか一つの態様によれば、動作命令毎の制御対象部位の姿勢変化速度の違いが自動的に軽減され、機械の制御対象部位が概ね一定の姿勢変化速度で変化するようになる。つまり制御対象部位の急激な姿勢変化が抑制されるため、機械による作業品質の低下を抑制できる。
第一実施形態の機械システムの構成図である。 第一実施形態の機械システムの機能ブロック図である。 基準点に応じた姿勢調整を行う作業の一例を説明する説明図である。 基準点に応じた姿勢調整前のツールと姿勢調整後のツールの上面図である。 基準点に応じた姿勢補正量の一例を示すツールの上面図である。 基準点に応じた姿勢調整画面の一例を示す図である。 基準線に応じた姿勢調整を行う作業の一例を説明する説明図である。 基準線に応じて姿勢調整されたツールの上面図である。 基準線に応じた姿勢補正量の一例を示すツールの斜視図である。 基準線に応じた姿勢補正量の一例を示すツールの上面図である。 基準線に応じた姿勢調整画面の一例を示す図である。 第一実施形態の姿勢調整方法の一例を示すフローチャートである。 第二実施形態の機械システムの機能ブロック図である。 第二実施形態の姿勢調整方法の一例を示すフローチャートである。 第三実施形態の機械システムの機能ブロック図である。 従来の姿勢教示の問題点を説明する説明図である。 従来の姿勢教示の問題点を説明する説明図である。 従来の姿勢教示の問題点を説明する説明図である。
 以下、添付図面を参照して本開示の実施形態を詳細に説明する。各図面において、同一又は類似の構成要素には同一又は類似の符号が付与されている。また、以下に記載する実施形態は、特許請求の範囲に記載される発明の技術的範囲及び用語の意義を限定するものではない。
 以下、第一実施形態の機械システム1の構成について説明する。図1は第一実施形態の機械システム1の構成図である。機械システム1は、機械2と、機械2の動作を制御する制御装置3と、を備えている。また、機械システム1は、必須ではないが、機械2の動作を教示する教示装置4を備えている。機械2、制御装置3、及び教示装置4は、有線又は無線を介して相互に通信可能に接続される。
 機械2は多関節ロボットで構成されるが、これに限定されず、他の実施形態では、単関節ロボット、パラレルリンク型ロボット、双腕ロボット等の他の産業用ロボットで構成されることもある。また、別の実施形態において、機械2は、産業用ロボットではなく、ヒューマノイド等の他の形態のロボットで構成されることもある。或いは、さらに別の実施形態において、機械2は、ロボットではなく、工作機械、建設機械、農業機械等の他の産業機械、又は車両、航空機、ロケット等の他の形態の機械で構成されることもある。
 機械2は相互に連結された一以上のリンク10~16を備えている。リンク11~16は所定の軸線J1~J6回りに回動する回動リンクで構成されるが、これに限定されず、他の実施形態では、所定の軸線に沿って直動する直動リンクで構成されることもある。第零リンク10は例えば所定位置に固定されるベースであり、第一リンク11は例えば第一軸線J1回りに第零リンク10に対して回転可能に支持される旋回胴である。第二リンク12は例えば第一軸線J1に直交する第二軸線J2回りに第一リンク11に対して回転可能に支持される上腕であり、第三リンク13は例えば第二軸線J2に平行な第三軸線J3回りに第二リンク12に対して回転可能に支持される前腕である。
 第四リンク14~第六リンク16は例えば第三リンク13に取付けられる三軸の手首である。第四リンク14は例えば第三軸線J3に直交する第四軸線J4回りに第三リンク13に対して回転可能に支持された第一手首要素であり、第五リンク15は例えば第四軸線J4に直交する第五軸線J5回りに第四リンク14に対して回転可能に支持された第二手首要素であり、第六リンク16は例えば第五軸線J5に直交する第六軸線J6回りに第五リンク15に対して回転可能に支持された第三手首要素である。
 必須ではないが、機械2はワーク又は工具を含む作業対象物が存在する作業空間の画像を取得する視覚センサ17を備えていてもよい。視覚センサ17は機械2の制御対象部位P(本例ではツール19の先端)の近傍に設けられるが、これに限定されず、他の実施形態では機械2とは別の場所に設けられることもある。視覚センサ17は二次元カメラで構成されるが、これに限定されず、他の実施形態では三次元カメラで構成されることもある。制御装置3又は教示装置4は視覚センサ17の検出情報から、作業対象物の状態、作業対象物の位置及び姿勢、作業対象物の移動速度、機械2の制御対象部位Pの位置及び姿勢、機械2の制御対象部位Pの移動速度等のパラメータを求めることもある。
 必須ではないが、機械2は機械2の制御対象部位Pに働く力を検出する力検出器18を備えていてもよい。力検出器18は三軸方向の力及び三軸回りのモーメント成分を検出する力センサで構成されるが、これに限定されず、他の実施形態では、少なくとも一以上の力を検出する力センサで構成されてもよい。或いは、別の実施形態では、力検出器18は、手首に取付けられる力センサで構成されるのではなく、リンク11~16の連結部に設けられる一以上のトルクセンサで構成されることもある。トルクセンサはリンク11~16に働くトルクを検出する。制御装置3又は教示装置4は力検出器18の検出情報から作業対象物に加える力の大きさと作用方向(つまり力パラメータ)を求めるが、これに限定されず、他の実施形態では、作業対象物の位置及び姿勢、作業対象物の移動速度、機械2の制御対象部位Pの位置及び姿勢、機械2の制御対象部位Pの移動速度等のパラメータを求めることもある。
 機械2は機械2の先端に取付けられるツール19をさらに備えている。本実施形態のツール19はワークを溶接する溶接ツールで構成されるが、これに限定されず、他の実施形態では、ハンドツール、塗装ツール、バリ取りツール、シーリングツール、切断ツール、研磨ツール、ヘム加工ツール等の他の形態のツールで構成されることもある。本実施形態の機械2は所定の動作軌道に沿って溶接ツールを移動させながらワークW1をワークW2に溶接する溶接作業を行うが、これに限定されず、他の実施形態では、ハンドツールで保持したワークを所定の動作軌道で移動させながらバリ取りツールや研磨ツール等の工具に押付けてバリ取り又は研磨を行うパリ取り作業、又は所定の動作軌道に沿って塗装ツール、シーリングツール、切断ツール、ヘム加工ツール等を移動させながらワークの塗装、シーリング、切断、ヘム加工等の種々の作業を行うこともある。
 機械2は、リンク11~16を駆動する一以上のアクチュエータ20と、アクチュエータ20の動作を検出する動作検出器21と、を備えている(図2参照)。アクチュエータ20はリンク11~16の連結部の近傍に設けられる。アクチュエータ20は電動機、減速機等を含む電気式アクチュエータで構成されるが、これに限定されず、他の実施形態では、油圧式、空気圧式等の他のアクチュエータで構成されることもある。動作検出器21はエンコーダで構成されるが、これに限定されず、他の実施形態では、レゾルバ、ホールセンサ等の他の形態の動作検出器で構成されることもある。制御装置3又は教示装置4は動作検出器21の検出情報から、アクチュエータ20の位置、速度、加速度等を含む動作を検出するが、これに限定されず、他の実施形態では、機械2の制御対象部位Pの位置及び姿勢、機械2の制御対象部位Pの移動速度等を求めることもある。
 制御装置3はプログラマブルロジックコントローラ(PLC)等を備えているが、これに限定されず、他の実施形態では、相互にバスで接続されたプロセッサ、メモリ、入出力インタフェース等を備える他の形態のコンピュータ装置で構成されることもある。制御装置3はアクチュエータ20を駆動する駆動回路を備えているが、これに限定されず、他の実施形態では、機械2がアクチュエータ20を駆動する駆動回路を備えることもある。制御装置3はアクチュエータ20を駆動させて機械2の動作を制御する。制御装置3は、視覚センサ17、力検出器18、動作検出器21等からそれぞれの検出情報を受取り、検出情報に基づいて機械2の動作を制御する。
 制御装置3は、世界座標系、機械座標系、フランジ座標系、ツール座標系、カメラ座標系、ユーザ座標系等の種々の座標系を設定する。これら座標系は例えば直交座標系で構成される。説明を容易にするため、制御装置3は、機械座標系C1、ツール座標系C2、ユーザ座標系C3を設定しているものとする。機械座標系C1は機械2の基準位置、例えばベースに固定され、ツール座標系C2はツール19の基準位置、例えばツール中心点(TP)に固定され、ユーザ座標系C3は任意の位置、例えばワークW2の基準位置に固定される。
 制御装置3はツール座標系C2の原点(即ちツール中心点:TCP)を機械2の制御対象部位P(本例ではツール19)に設定するものとする。従って、機械2の制御対象部位Pの位置及び姿勢(機械2の位置及び姿勢とも称する)は機械座標系C1におけるツール座標系C2の位置及び姿勢として表されるが、これに限定されず、他の実施形態では、制御対象部位Pの位置及び姿勢は機械座標系C1におけるフランジ座標系の位置及び姿勢として表されることもあり、又はユーザ座標系C3におけるツール座標系C2として表されることもある。制御装置3は教示装置4で作成された動作プログラムに従って機械2の動作を制御する。
 動作プログラムは、機械2の動作軌道Tを構成する教示点へ機械2の制御対象部位Pを移動させる移動命令、作業対象物に加える力を制御する力制御命令、機械2に所定の動作パターン(パレタイジング、デパレタイジング等)を実行させるアプリケーション命令、所定の条件で制御命令を分岐させる条件分岐命令、所定の条件で所定の制御命令をループさせるループ命令等の種々の制御命令を含む。移動命令、力制御命令、アプリケーション命令は制御対象部位Pを動作させる動作命令の一例である。
 教示装置4は有線又は無線で制御装置3に通信可能に接続する携帯型のティーチペンダントで構成されるが、これに限定されず、他の実施形態では、制御装置3に直接組付けられる教示操作盤、タブレット、パーソナルコンピュータ、サーバ装置等の他の形態のコンピュータ装置で構成されることもある。教示装置4は相互にバスで接続されたプロセッサ、メモリ、入出力インタフェース、ユーザインタフェース等を備えている。ユーザインタフェースはタッチパネル、ディスプレイ等の表示器や、キーボード、ボタン、スイッチ等の入力器で構成される。教示装置4は機械2の動作プログラムを作成するプログラム作成ソフトウェアを備えている。教示装置4は作成された動作プログラムを制御装置3に送出する。
 以上のように構成された機械システム1において、制御装置3は動作プログラムに従って機械2を動作させ、機械2はツール19を用いて第一ワークW1を第二ワークW2に溶接する溶接作業を行う。このような溶接作業の他、塗装作業、バリ取り作業、シーリング作業、切断作業、研磨作業、ヘム加工作業等のようにツール19の動作軌道を活用した作業では、ツール19の姿勢が急激に変化すると作業品質が低下することがある。従って、教示者はツール19の姿勢が急激に変化しないようにツール19の姿勢を教示する。しかし、ツール19の姿勢が滑らか変化するように(つまり姿勢変化速度が概ね一定になるように)ツール19の姿勢を教示することは容易なことではない。
 そこで、本開示の機械システム1はツール19の姿勢の基準情報に基づいてツール19の動作軌道におけるツール19の姿勢を調整する。第一実施形態の機械システム1では、ツール19の姿勢の基準情報に基づいてツール19の動作軌道におけるツール19の姿勢補正量を算出し、姿勢補正量に基づいて機械2の動作プログラムで使用されるツール19の姿勢情報を補正する。
 以下、第一実施形態の機械システム1の機能ブロックについて説明する。図2は第一実施形態の機械システム1の機能ブロック図である。機械2は、リンクを駆動する一以上のアクチュエータ20と、アクチュエータ20の動作を検出する一以上の動作検出器21と、を備えている。教示装置4は機械2の動作の教示又は機械2の状態の確認を行うユーザインタフェース(UI)部40を備えている。センサ5は種々の情報を検出する種々のセンサ(視覚センサ17や力検出器18等)で構成される。
 制御装置3は、ツール19の姿勢を調整する姿勢調整部30と、機械2の動作プログラム31aや動作プログラム31aで使用されるツール19の位置及び姿勢等の種々の情報を記憶する記憶部31と、動作プログラム31aや動作検出器21又はセンサ5(視覚センサ17や力検出器18等)の検出情報に従って一以上のアクチュエータ20(つまり機械2)の動作を制御する制御部32と、を備えている。
 姿勢調整部30、基準情報設定部30a、及び姿勢補正量算出部30bはPLC、CPU(central processing unit)、MPU(micro processing unit)等のプロセッサで読取られて実行される一以上のプログラム又はプログラムセクションで構成されるが、これに限定されず、他の実施形態では、一以上の半導体集積回路で構成されることもある。
 記憶部31はRAM(random access memory)、ROM(read only memory)、SSD(solid state drive)等のメモリで構成される。制御部32はPLC、CPU、MPU等のプロセッサで読取られて実行される一以上のプログラム又はプログラムセクションで構成されるが、これに限定されず、他の実施形態では、一以上の半導体集積回路や一以上の駆動回路で構成されることもある。
 姿勢調整部30は、UI部40、動作検出器21、センサ5(視覚センサ17や力検出器18等)等の種々の入力情報に基づいてツール19の姿勢の基準情報を設定する基準情報設定部30aと、設定された基準情報に基づいてツール19の動作軌道におけるツール19の姿勢補正量を算出する姿勢補正量算出部30bと、を備えている。
 姿勢調整部30はツール19の姿勢の基準情報として基準点及び基準線の少なくとも一方を用いる。ツール19が曲線に沿って移動する場合、基準情報設定部30aはツール19の動作軌道におけるツール19の回転中心点として基準点を設定する。ツール19が所定の姿勢情報を保った状態で曲線に沿って移動する場合、基準情報設定部30aはツール19の動作軌道におけるツール19の回転中心軸として基準線を設定する。
 ツール19の動作軌道が曲線、直線、及びこれらの組み合わせで構成される場合、基準情報設定部30aは動作軌道を構成する教示点毎に又は動作区間毎に基準情報を設定する。従って、基準情報設定部30aはツール19の動作軌道を構成する教示点毎に又は動作区間毎に基準情報を紐付けて記録する。つまり基準情報設定部30aはツール19の動作軌道を構成する教示点毎に又は動作区間毎に基準情報を切替えて設定するとよい。
 基準情報が基準点である場合、姿勢調整部30は基準点をツール19の動作軌道におけるツール19の回転中心点としてツール19の姿勢を調整する。つまり姿勢補正量算出部30bはツール19の姿勢ベクトルが基準点とツール19の動作軌道におけるツール19の位置とを通過する直線の方向にツール19の姿勢を補正する姿勢補正量を算出する。より具体的には、姿勢補正量算出部30bは姿勢調整前のツール19の姿勢ベクトルと基準点が存在する平面に対して垂直な補正回転軸であってツール19の動作軌道におけるツール19の位置を通過する補正回転軸回りにツール19の姿勢ベクトルを回転し、姿勢ベクトルが基準点を通過する姿勢補正量を算出する。
 基準情報が基準線である場合、姿勢調整部30は基準線をツール19の動作軌道におけるツール19の回転中心軸としてツール19の姿勢を調整する。つまり姿勢補正量算出部30bはツール19の姿勢ベクトルがツール19の動作軌道におけるツール19の位置を通過して基準線と交差する方向にツール19の姿勢を補正する姿勢補正量を算出する。より具体的には、姿勢補正量算出部30bは基準線に平行な補正回転軸であってツール19の動作軌道におけるツール19の位置を通過する補正回転軸回りにツール19の姿勢ベクトルを回転し、姿勢ベクトルが基準線と交差する方向にツール19の姿勢を補正する姿勢補正量を算出する。
 姿勢補正量算出部30bはツール19の動作軌道におけるツール19の位置毎に姿勢補正量を算出する。また、ツール19の動作軌道が曲線、直線、及びこれらの組み合わせで構成される場合、姿勢補正量算出部30bはツール19の動作軌道におけるツール19の位置毎に又は動作区間毎に基準情報を切替えて姿勢補正量を算出する。
 第一実施形態では、姿勢補正量算出部30bは算出した姿勢補正量に基づいて動作プログラム31aで使用されるツール19の姿勢情報を補正する。なお、動作プログラム31aで使用されるツール19の位置情報は姿勢補正量算出部30bによって補正されない。制御部32は補正されたツール19の姿勢を使用する動作プログラム31aに従って機械2の動作を制御する。
 以上のように、ツール19が曲線に沿って移動する場合にはツール19の姿勢が基準点に基づいて自動調整され、ツール19が所定の姿勢情報を保ったまま曲線に沿って移動する場合にはツール19の姿勢が基準線に基づいて自動調整される。また、ツール19の動作軌道が曲線、直線、及びこれらの組み合わせで構成される場合にはツール19の姿勢が基準点及び基準線の組み合わせに基づいて自動調整される。
 従って、ツール19の動作軌道が複雑な軌道であっても、教示者の経験値に拘わらず従来と比べて簡単な教示でツール19の姿勢が滑らかに変化する。つまりツール19の急激な姿勢変化が抑制される。ひいては教示者の熟練度の違いによる作業品質の差が低減する。
 以下、基準点に応じてツール19の姿勢を調整する実施例について詳述する。図3は基準点に応じた姿勢調整を行う作業の一例を説明する説明図である。図3には円筒状の第一ワークW1を円筒状の第二ワークW2に直交させた状態で溶接する溶接作業が示されている。加工線MLは曲線で構成されるため、ツール19の動作軌道も加工線MLに沿った曲線で構成される。
 ツール19が曲線に沿って移動する場合、基準情報設定部30aはツール19の動作軌道におけるツール19の回転中心点として基準点RPを設定する。本例では、基準点RPが第一ワークW1の中心軸線O1と第二ワークW2の中心軸線O2との交点に設定されている。姿勢調整部30は基準点RPをツール19の動作軌道におけるツール19の回転中心点としてツール19の姿勢を調整する。
 図4は基準点RPに応じた姿勢調整前のツール19(白で示す)と姿勢調整後のツール19′(黒で示す)の上面図である。姿勢補正量算出部30bはツール19の姿勢ベクトルが基準点RPとツール19の動作軌道を構成する教示点P1~P3とを通過する直線Lの方向にツール19の姿勢を補正する姿勢補正量を算出する。
 図5は基準点RPに応じた姿勢補正量θの一例を示すツール19の上面図である。姿勢補正量算出部30bは姿勢調整前のツール19の姿勢ベクトルと基準点RPが存在する平面に対して垂直な補正回転軸CAであって教示点P1を通過する補正回転軸CA回りにツール19の姿勢ベクトルを回転し、姿勢ベクトルが基準点RPを通過する姿勢補正量θを算出する。姿勢補正量θは補正回転軸CA回りの一次元の回転量であるため、教示者は姿勢調整後のツール19′の姿勢を容易に想像できる。
 以上のように基準点RPに応じた姿勢調整を行う場合、教示者は教示装置4を用いて姿勢調整の設定を事前に行う。図6は基準点RPに応じた姿勢調整画面41の一例を示す図である。姿勢調整画面41は姿勢調整部30によって生成されてUI部40に表示される。姿勢調整画面41は、基準情報タイプ42、基準情報設定ボタン44、姿勢調整モード45、姿勢補正量記録46、及び軌道履歴表47の設定機能を備えている。基準情報タイプ42及び基準情報設定44の設定機能は基準情報設定部30aによって実現され、姿勢調整モード45、姿勢補正量記録46、及び軌道履歴表47の設定機能は姿勢補正量算出部30bによって実現される。
 基準点RPに応じた姿勢調整を行う場合、教示者は基準情報タイプ42を「基準点」に設定する。基準情報タイプ42を設定すると、基準点RPを識別する基準情報番号43である「1」が基準情報に自動割当てされる。つまり基準情報設定部30aはツール19の一つの動作軌道に対して複数の基準点を設定できるように構成されている。
 次に教示者は基準情報設定ボタン44を押下して図示しない基準情報設定ウィンドウを表示させ、基準情報設定ウィンドウで基準点RPを設定する。
 基準点RPの設定方法としては例えば次の方法が挙げられる。
(1)教示者は1点の位置(X,Y,Z)を入力する。基準情報設定部30aは入力点を基準点RPに設定する。
(2)教示者は2点の位置(X,Y,Z)を入力する。基準情報設定部30aは2点の中間点を基準点RPに設定する。
(3)教示者は1点の位置及び姿勢(X,Y,Z,W,P,R)と距離を入力する。基準情報設定部30aは姿勢(W,P,R)から得られる姿勢のベクトルと同一方向であって位置(X,Y,Z)を通る直線上の位置(X,Y,Z)から指定された距離に位置する点を基準点RPに設定する。
(4)教示者は2点の位置(X,Y,Z)と距離を入力する。基準情報設定部30aは2点を結ぶ直線上の一方の点から指定された距離に位置する点を基準点RPに設定する。
(5)教示者は3点の位置(X,Y,Z)を入力する。基準情報設定部30aは3点を通る円の中心点を基準点RPに設定する。
(6)教示者は4点以上の位置(X,Y,Z)を入力する。基準情報設定部30aは3点を通る円の中心点を3点の組み合せ毎に算出した後、全ての円の中心点の平均位置を基準点RPに設定する。
 また、基準点RPの元情報(上記点の位置及び姿勢や距離等の情報)の入力方法としては例えば次の方法が挙げられる。
(1)教示装置4を用いて機械2を実際に動かしてツール19を作業対象物にタッチアップすることで基準点RPの元情報を入力する。或いは、教示装置4を用いて機械2のモデルを仮想空間上で動かしてツール19を作業対象物のモデルにタッチアップすることで基準点RPの元情報を入力する。
(2)教示装置4上で基準点RPの元情報の数値を直接手動入力する。
(3)教示装置4を用いて機械2を実際に動かして動作検出器21やセンサ5(視覚センサ17や力検出器18等)の検出情報から基準点RPの元情報を自動入力する。或いは、教示装置4を用いて機械2のモデルを仮想空間上で動かして動作検出器21のモデルの検出情報から基準点RPの元情報を自動入力する。
 次に教示者は姿勢調整モード45を「有効」に設定する。姿勢調整モード45が「有効」に設定された場合、教示者がツール19の動作軌道を教示しているときに、又は既に教示された教示点P1、P2、P3又は動作区間P1~P3が軌道履歴表47で選択されたときに、姿勢補正量算出部30bが基準点RPとツール19の動作軌道を構成する教示点P1~P3の位置及び姿勢(X,Y,Z,W,P,R)とに基づいてツール19の姿勢補正量θを算出し、姿勢補正量θに基づいて機械2の動作プログラム31aで使用されるツール19の姿勢(W,P,R)の情報を上書きする。
 一方、教示者が姿勢調整モード45を「無効」に設定した場合、姿勢補正量算出部30bはツール19の姿勢補正量θを算出せず、機械2の動作プログラム31aで使用される制御対象部位Pの姿勢(W,P,R)の情報も上書きしない。
 また、算出した姿勢補正量θを記録しない場合、教示者は姿勢補正量記録46を「無効」に設定する。姿勢補正量記録46が「無効」に設定されている場合、姿勢補正量θが記録されないため、動作プログラム31aで使用される上書き済の姿勢(W,P,R)の情報を元に戻すことはできない。
 一方、算出した姿勢補正量θを記録する場合、教示者は姿勢補正量記録46を「有効」に設定する。姿勢補正量記録46が「有効」に設定されている場合、姿勢調整部30はツール19の動作軌道におけるツール19の位置毎に姿勢補正量θを記録する。姿勢調整モード45が「有効」から「無効」に変更された場合、姿勢調整部30は記録された姿勢補正量θに基づいて動作プログラム31aで使用される上書き済の姿勢(W,P,R)の情報を元に戻す。
 以上のように教示者は姿勢調整画面41で基準点RPを設定して姿勢調整モード45を「有効」に設定するだけで、ツール19の姿勢が基準点RPに基づいて自動調整される。従って、ツール19が曲線に沿って移動する場合であっても、教示者の経験値に拘わらず従来と比べて簡単な教示でツール19の姿勢が滑らかに変化する。つまりツール19の急激な姿勢変化が抑制される。ひいては教示者の熟練度の違いによる作業品質の差が低減する。
 以下、基準線に応じてツール19の姿勢を調整する実施例について詳述する。図7は基準線に応じた姿勢調整を行う作業の一例を説明する説明図である。図7にはS字状の第一ワークW1を板状の第二ワークW2に直交させた状態で溶接する溶接作業が示されている。加工線MLは曲線で構成されるため、ツール19の動作軌道も加工線MLに沿った曲線で構成される。ツール19は第一ワークW1又は第二ワークW2に干渉しないようにツール19の姿勢が所定角度αで事前に教示されるものとする。
 ツール19が所定角度αを保った状態で曲線に沿って移動する場合、基準情報設定部30aはツール19の動作軌道におけるツール19の回転中心軸として基準線RL1、RL2を設定する。本例では、二つの基準線RL1、RL2が加工線MLを構成する曲線のピーク毎に設定されている。姿勢調整部30は二つの基準線RL1、RL2をツール19の動作軌道におけるツール19の回転中心軸としてツール19の姿勢を調整する。
 図8は基準線RL1、RL2に応じた姿勢調整前のツール19(白で示す)と姿勢調整後のツール19′(黒で示す)の上面図である。姿勢補正量算出部30bはツール19の姿勢ベクトルがツール19の動作軌道を構成する教示点P1~P3を通過して第一基準線RL1と交差する方向にツール19の姿勢を補正する姿勢補正量を算出する。同様に、姿勢補正量算出部30bはツール19の姿勢ベクトルがツール19の動作軌道を構成する教示点P4~P7を通過して第二基準線RL2と交差する方向にツール19の姿勢を補正する姿勢補正量を算出する。
 図9Aは基準線RL1に応じた姿勢補正量θの一例を示すツール19の斜視図であり、図9Bは基準線RL1に応じた姿勢補正量θの一例を示すツール19の上面図である。姿勢補正量算出部30bは基準線RL1に平行な補正回転軸CA1であってツール19の動作軌道を構成する教示点P1を通過する補正回転軸CA1回りにツール19の姿勢ベクトルを回転し、姿勢ベクトルが基準線RL1と交差する方向にツール19の姿勢を補正する姿勢補正量θを算出する。姿勢補正量θは補正回転軸CA1回りの一次元の回転量であるため、教示者は姿勢調整後のツール19′の姿勢を容易に想像できる。
 以上のように基準線RL1、RL2に応じた姿勢調整を行う場合、教示者は教示装置4を用いて姿勢調整の設定を事前に行う。図10は基準線RL1、RL2に応じた姿勢調整画面41の一例を示す図である。姿勢調整画面41は姿勢調整部30によって生成されてUI部40に表示される。姿勢調整画面41は、基準情報タイプ42、基準情報設定ボタン44、姿勢調整モード45、姿勢補正量記録46、及び軌道履歴表47の設定機能を備えている。基準情報タイプ42及び基準情報設定ボタン44の設定機能は基準情報設定部30aによって実現され、姿勢調整モード45、姿勢補正量記録46、及び軌道履歴表47の設定機能は姿勢補正量算出部30bによって実現される。
 基準線RL1、RL2に応じた姿勢調整を行う場合、教示者は基準情報タイプ42を「基準線」に設定する。基準情報タイプ42を設定すると、基準線RL2を識別する基準情報番号43である「2」が基準情報に自動割当てされる。つまり基準情報設定部30aはツール19の一つの動作軌道に対して複数の基準線を設定できるように構成されている。
 本例では、基準線RL1が既に設定されており、教示者は基準情報設定ボタン44を押下して図示しない基準情報設定ウィンドウを表示させ、基準情報設定ウィンドウで基準線RL2を設定するものとする。
 基準線RL2の設定方法としては例えば次の方法が挙げられる。
(1)教示者は1点の位置及び姿勢(X,Y,Z,W,P,R)を入力する。基準情報設定部30aは入力点の位置及び姿勢(X,Y,Z,W,P,R)を通過する直線を基準線RL2に設定する。
(2)教示者は2点の位置(X,Y,Z)を入力する。基準情報設定部30aは2点を通過する直線を基準線RL2に設定する。
 また、基準線RL2の元情報(上記点の位置及び姿勢等の情報)の入力方法としては例えば次の方法が挙げられる。
(1)教示装置4を用いて機械2を実際に動かしてツール19を作業対象物にタッチアップすることで基準線RL2の元情報を入力する。或いは、教示装置4を用いて機械2のモデルを仮想空間上で動かしてツール19を作業対象物のモデルにタッチアップすることで基準線RL2の元情報を入力する。
(2)教示装置4上で基準線RL2の元情報の数値を直接手動入力する。
(3)教示装置4を用いて機械2を実際に動かして動作検出器21やセンサ5(視覚センサ17や力検出器18等)の検出情報から基準線RL2の元情報を自動入力する。或いは、教示装置4を用いて機械2のモデルを仮想空間上で動かして動作検出器21のモデルの検出情報から基準線RL2の元情報を自動入力する。
 次に教示者は姿勢調整モード45を「有効」に設定する。姿勢調整モード45が「有効」に設定された場合、教示者がツール19の動作軌道を教示しているときに、或いは既に教示された教示点又は動作区間が軌道履歴表47で選択されたときに、姿勢補正量算出部30bが基準線RL2とツール19の動作軌道を構成する教示点P5の位置及び姿勢(X,Y,Z,W,P,R)とに基づいてツール19の姿勢補正量θを算出し、算出した姿勢補正量θに基づいて機械2の動作プログラム31aで使用される制御対象部位Pの姿勢(W,P,R)の情報を上書きする。
 一方、教示者が姿勢調整モード45を「無効」に設定した場合、姿勢補正量算出部30bはツール19の姿勢補正量θを算出せず、機械2の動作プログラム31aで使用されるツール19の姿勢(W,P,R)の情報も上書きしない。
 また、算出した姿勢補正量θを記録しない場合、教示者は姿勢補正量記録46を「無効」に設定する。姿勢補正量記録46が「無効」に設定されている場合、姿勢補正量θが記録されないため、動作プログラム31aで使用される上書き済のツール19の姿勢(W,P,R)の情報を元に戻すことはできない。
 一方、算出した姿勢補正量θを記録する場合、教示者は姿勢補正量記録46を「有効」に設定する。姿勢補正量記録46が「有効」に設定されている場合、姿勢調整部30はツール19の動作軌道におけるツール19の位置毎に姿勢補正量θを記録する。姿勢調整モード45が「有効」から「無効」に変更された場合、姿勢調整部30は記録された姿勢補正量θに基づいて動作プログラム31aで使用される上書き済のツール19の姿勢(W,P,R)の情報を元に戻す。
 以上のように教示者は姿勢調整画面41で基準線RL1、RL2を設定して姿勢調整モード45を「有効」に設定するだけで、ツール19の姿勢が基準線RL1、RL2に基づいて自動調整される。従って、ツール19が所定角度αを保った状態で曲線に沿って移動する場合であっても、教示者の経験値に拘わらず従来と比べて簡単な教示でツール19の姿勢が滑らかに変化する。つまりツール19の急激な姿勢変化が抑制される。ひいては教示者の熟練度の違いによる作業品質の差が低減する。
 以下、第一実施形態の姿勢調整方法の一例について説明する。図11は第一実施形態の姿勢調整方法の一例を示すフローチャートである。ステップS10では基準点及び基準の少なくとも一方を含む基準情報を設定する。基準情報の設定は前述の姿勢調整画面41で行われる。ステップS11では機械2の教示中に又は教示後にツール19の動作軌道におけるツール19の位置及び姿勢を取得する。
 ツール19の動作軌道におけるツール19の位置及び姿勢の取得方法としては例えば次の方法が挙げられる。
(1)教示装置4を用いて機械2を実際に動かして又は教示装置4を用いて機械2のモデルを仮想空間上で動かしてツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)を取得する。
(2)教示装置4上でツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)の数値を直接手動入力する。
(3)教示装置4を用いて機械2を実際に動かして又は教示装置4を用いて機械2のモデルを仮想空間上で動かして動作検出器21やセンサ5(視覚センサ17や力検出器18等)の検出情報からツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)を自動入力する。
(4)作成済の動作プログラム31aで使用されるツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)の情報から取得する。
 ステップS12では基準情報とツール19の動作軌道におけるツール19の位置及び姿勢からツール19の姿勢補正量を算出する。ステップS13では姿勢補正量に基づいて動作プログラム31aで使用される姿勢(W,P,R)の情報を補正する。なお、ステップS12又はステップS13では動作プログラム31aの上書きされた姿勢(W,P,R)の情報を元に戻せるように姿勢補正量を記録しておいてもよい。
 以上のように第一実施形態の姿勢調整方法では、機械2の教示中又は教示後に動作プログラム31aで使用されるツール19の姿勢(W,P,R)の情報を補正するため、教示者の経験値に拘わらず従来と比べて簡単な教示でツール19の急激な姿勢変化が抑制される。ひいては教示者の熟練度の違いによる作業品質の差が低減する。
 以下、第二実施形態の機械システム1の機能ブロックについて説明する。図12は第二実施形態の機械システム1の機能ブロック図である。第二実施形態の機械システム1では、姿勢調整部30が機械2の動作中にツール19の姿勢補正量31bを算出し、制御部32は姿勢補正量31bに基づいて機械2の動作中にツール19の姿勢を補正する点で、第一実施形態の機械システム1と異なる。また、姿勢調整部30は算出した姿勢補正量31bを記憶部31に記録しておき、制御部32は機械2の次回以降の動作で記録された姿勢補正量31bに基づいてツール19の姿勢を補正してもよい。
 第二実施形態では、教示者は図6及び図10に示すように姿勢調整画面41において基準点及び基準線の少なくとも一方を事前に設定する。また、教示者は姿勢調整モード45を「有効」に設定する。姿勢調整モード45が「有効」に設定された場合、制御部32が動作プログラム31aや動作検出器21又はセンサ5(視覚センサ17や力検出器18等)の検出情報に従って機械2の動作を制御するときに、姿勢補正量算出部30bが基準点及び基準線の少なくとも一方を含む基準情報とツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)とに基づいてツール19の姿勢補正量31bを算出し、制御部32は姿勢補正量31bに基づいて機械2の動作中にツール19の姿勢を補正する。
 一方、姿勢調整モード45が「無効」に設定された場合、姿勢補正量算出部30bは機械2の動作中にツール19の姿勢補正量31bを算出せず、制御部32は機械2の動作中にツール19の姿勢を補正しない。
 また、機械2の次回以降の動作において以前算出されたツール19の姿勢補正量31bを使用する場合、教示者は姿勢補正量記録46を「有効」に設定する。姿勢補正量記録46が「有効」に設定された場合、姿勢補正量算出部30bは機械2の動作中に姿勢補正量31bを算出したら記憶部31に姿勢補正量31bを記録し、制御部32は記録された過去の姿勢補正量31bに基づいて機械2の動作中にツール19の姿勢を補正する。
 一方、姿勢補正量記録46が「無効」に設定された場合、姿勢補正量算出部30bは機械2が動作する度にツール19の姿勢補正量31bを再計算し、制御部32は再計算された姿勢補正量31bに基づいて機械2の動作中にツール19の姿勢を補正する。つまり機械2の動作プログラム31aの実行中にツール19の位置及び姿勢が他の機能によって変更された場合であっても、制御部32が再計算されたツール19の姿勢補正量31bに基づいて機械2の動作中にツール19の姿勢を補正するため、他の機能によるツール19の位置及び姿勢の変更の有無に拘わらずツール19の急激な姿勢変化が抑制される。
 以下、第二実施形態の姿勢調整方法の一例について説明する。図13は第二実施形態の姿勢調整方法の一例を示すフローチャートである。ステップS20では基準点及び基準線の少なくとも一方を含む基準情報を設定する。基準情報の設定は前述の姿勢調整画面41で行われる。ステップS21では機械2の動作中にツール19の動作軌道におけるツール19位置及び姿勢を取得する。
 ツール19の動作軌道におけるツール19の位置及び姿勢の取得方法としては例えば次の方法が挙げられる。
(1)作成済の動作プログラム31aで使用されるツール19の位置及び姿勢(X,Y,Z,W,P,R)の情報から取得する。
(2)機械2の動作中に動作検出器21やセンサ5(視覚センサ17や力検出器18等)の検出情報からツール19の動作軌道におけるツール19の位置及び姿勢(X,Y,Z,W,P,R)を自動入力する。
 ステップS22では基準情報とツール19の動作軌道におけるツール19の位置及び姿勢から姿勢補正量を算出する。ステップS23ではツール19の姿勢補正量に基づいて機械2の動作中に制御対象部位Pの姿勢(W,P,R)を補正する。なお、ステップS22又はステップS23では次回以降の機械2の動作中にツール19の姿勢を補正できるように姿勢補正量を記録しておいてもよい。
 以上のように第二実施形態の姿勢調整方法では、機械2の動作中にツール19の姿勢(W,P,R)を補正するため、動作プログラム31aの実行中に他の機能によってツール19の位置及び姿勢が変更された場合であっても、ツール19の急激な姿勢変化が抑制される。ひいては他の機能によるツール19の位置及び姿勢の変更の有無による作業品質の差が低減する。
 以下、第三実施形態の機械システム1の機能ブロックについて説明する。図14は第三実施形態の機械システム1の機能ブロック図である。第三実施形態の機械システム1では、制御装置3がツール19の姿勢を調整する姿勢調整部30を備えるのでなく、教示装置4が姿勢調整部30を備える点で、第一実施形態又は第二実施形態の機械システム1と異なる。また、必須ではないが、教示装置4は動作プログラム31aや姿勢補正量31b等の種々の情報を記憶する記憶部31をさらに備えていてもよい。なお、第三実施形態の姿勢調整方法は、第一実施形態の姿勢調整方法及び第二実施形態の姿勢調整方法のいずれかと同一であるため、説明を省略する。
 以上の実施形態によれば、動作命令毎のツール19の姿勢変化速度の違いが自動的に軽減され、ツール19が概ね一定の姿勢変化速度で変化するようになる。つまりツール19の急激な姿勢変化が抑制されるため、機械2による作業品質の低下を抑制できる。
 また、機械2の教示中又は教示後に動作プログラム31aで使用されるツール19の姿勢情報を補正する場合、教示者の経験値に拘わらず従来と比べて簡単な教示で制御対象部位Pの急激な姿勢変化が抑制される。ひいては教示者の熟練度の違いによる作業品質の差が低減する。
 さらに、機械2の動作中にツール19の姿勢を補正する場合、動作プログラム31aの実行中に他の機能によってツール19の位置及び姿勢が変更された場合であってもツール19の急激な姿勢変化が抑制される。ひいては他の機能によるツール19の位置及び姿勢の変更の有無による作業品質の差が低減する。
 なお、前述のプログラム又はソフトウェアは、コンピュータ読取り可能な非一時的記録媒体、例えばCD-ROM等に記録して提供してもよいし、或いは有線又は無線を介してWAN(wide area network)又はLAN(local area network)上のサーバ装置から配信して提供してもよい。
 本明細書において種々の実施形態について説明したが、本発明は、前述の実施形態に限定されるものではなく、以下の特許請求の範囲に記載された範囲内において種々の変更を行えることを認識されたい。
 1 機械システム(ロボットシステム)
 2 機械(ロボット)
 3 制御装置
 4 教示装置
 5 センサ
 10~16 リンク
 17 視覚センサ
 18 力検出器
 19 ツール
 19′ 姿勢調整後のツール
 20 アクチュエータ
 21 動作検出器
 30 姿勢調整部
 30a 基準情報設定部
 30b 姿勢補正量算出部
 31 記憶部
 31a 動作プログラム
 31b 姿勢補正量
 32 制御部
 40 ユーザインタフェース部
 41 姿勢調整画面
 42 基準情報タイプ
 43 基準情報番号
 44 基準情報設定
 45 姿勢調整モード
 46 姿勢補正量記録
 47 軌道履歴表
 C1 機械座標系
 C2 ツール座標系
 C3 ユーザ座標系
 CA、CA1、CA2 補正回転軸
 J1~J6 軸線
 ML 加工線
 O1、O2 ワークの中心軸線
 P 制御対象部位
 P1~P4 教示点
 RP 基準点
 RL1、RL2 基準線
 T 動作軌道
 W1、W2 ワーク
 α 所定角度
 θ 姿勢補正量

Claims (13)

  1.  機械の制御対象部位の姿勢の基準情報に基づいて前記制御対象部位の動作軌道における前記制御対象部位の前記姿勢を調整する姿勢調整部と、
     調整された前記姿勢に基づいて機械の動作を制御する制御部と、
     を備え、
     前記姿勢調整部は前記基準情報として基準点及び基準線の少なくとも一方を用いる、制御装置。
  2.  前記基準情報が前記基準点である場合、前記姿勢調整部は前記基準点を前記制御対象部位の前記動作軌道における前記制御対象部位の回転中心点として前記制御対象部位の前記姿勢を調整する、請求項1に記載の制御装置。
  3.  前記基準情報が前記基準線である場合、前記姿勢調整部は前記基準線を前記制御対象部位の前記動作軌道における前記制御対象部位の回転中心軸として前記制御対象部位の前記姿勢を調整する、請求項1又は2に記載の制御装置。
  4.  前記姿勢調整部は、
      前記基準情報を設定する基準情報設定部と、
      前記基準情報と前記制御対象部位の前記動作軌道における前記制御対象部位の位置及び前記姿勢とに基づいて前記制御対象部位の姿勢補正量を算出する姿勢補正量算出部と、
     を備える、請求項1から3のいずれか一項に記載の制御装置。
  5.  前記基準情報が前記基準点である場合、前記姿勢補正量算出部は姿勢調整前の前記制御対象部位の姿勢ベクトルと前記基準点が存在する平面に対して垂直な補正回転軸であって前記制御対象部位の前記動作軌道における前記制御対象部位の位置を通過する前記補正回転軸回りに前記制御対象部位の姿勢ベクトルを回転し、前記姿勢ベクトルが前記基準点を通過する姿勢補正量を算出する、請求項4に記載の制御装置。
  6.  前記基準情報が前記基準線である場合、前記姿勢補正量算出部は前記基準線に平行な補正回転軸であって前記制御対象部位の前記動作軌道における前記制御対象部位の位置を通過する前記補正回転軸回りに前記制御対象部位の姿勢ベクトルを回転し、前記姿勢ベクトルが前記基準線と交差する方向に前記制御対象部位の前記姿勢を補正する姿勢補正量を算出する、請求項4又は5に記載の制御装置。
  7.  前記基準情報設定部は前記制御対象部位の前記動作軌道を構成する教示点毎に又は動作区間毎に前記基準情報を紐付けて記録する、又は前記動作軌道を構成する教示点毎に又は動作区間毎に前記基準情報を切替えて設定する、請求項4から6のいずれか一項に記載の制御装置。
  8.  前記姿勢補正量算出部は前記制御対象部位の前記動作軌道における前記制御対象部位の位置毎に又は前記制御対象部位の動作区間毎に前記基準情報を切替えて前記姿勢補正量を算出する、請求項4から7のいずれか一項に記載の制御装置。
  9.  前記姿勢補正量算出部は前記制御対象部位の前記姿勢補正量を記録する、請求項4から8のいずれか一項に記載の制御装置。
  10.  前記姿勢補正量算出部は、前記機械の教示中に又は教示後に前記制御対象部位の前記姿勢補正量を算出し、前記機械の動作プログラムで使用される前記制御対象部位の姿勢情報を補正する、請求項4から9のいずれか一項に記載の制御装置。
  11.  前記姿勢補正量算出部は前記機械の動作中に前記制御対象部位の前記姿勢補正量を算出し、前記制御部が前記姿勢補正量に基づいて前記機械の動作中に前記制御対象部位の前記姿勢を補正する、請求項4から10のいずれか一項に記載の制御装置。
  12.  機械の制御対象部位の姿勢の基準情報に基づいて前記制御対象部位の動作軌道における前記制御対象部位の前記姿勢を調整する姿勢調整部を備え、前記姿勢調整部は前記基準情報として基準点及び基準線の少なくとも一方を用いる、教示装置。
  13.  機械と、
     前記機械の制御対象部位の姿勢の基準情報に基づいて前記制御対象部位の動作軌道における前記制御対象部位の前記姿勢を調整する姿勢調整部と、
     調整された前記姿勢に基づいて前記機械の動作を制御する制御部と、
     を備え、
     前記姿勢調整部は前記基準情報として基準点及び基準線の少なくとも一方を用いる、機械システム。
PCT/JP2022/001182 2022-01-14 2022-01-14 制御装置、教示装置、及び機械システム WO2023135762A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2022/001182 WO2023135762A1 (ja) 2022-01-14 2022-01-14 制御装置、教示装置、及び機械システム
CN202280080087.0A CN118338996A (zh) 2022-01-14 2022-01-14 控制装置、示教装置以及机械系统
JP2023573764A JPWO2023135762A1 (ja) 2022-01-14 2022-01-14
DE112022005340.2T DE112022005340T5 (de) 2022-01-14 2022-01-14 Steuervorrichtung, Einlernvorrichtung und mechanisches System
TW111148237A TW202333008A (zh) 2022-01-14 2022-12-15 控制裝置、教示裝置、及機械系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/001182 WO2023135762A1 (ja) 2022-01-14 2022-01-14 制御装置、教示装置、及び機械システム

Publications (1)

Publication Number Publication Date
WO2023135762A1 true WO2023135762A1 (ja) 2023-07-20

Family

ID=87278765

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/001182 WO2023135762A1 (ja) 2022-01-14 2022-01-14 制御装置、教示装置、及び機械システム

Country Status (5)

Country Link
JP (1) JPWO2023135762A1 (ja)
CN (1) CN118338996A (ja)
DE (1) DE112022005340T5 (ja)
TW (1) TW202333008A (ja)
WO (1) WO2023135762A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123536A (ja) * 1994-10-25 1996-05-17 Fanuc Ltd 溶接トーチ姿勢の教示方法
JP2009245164A (ja) * 2008-03-31 2009-10-22 Mitsubishi Electric Corp 数値制御装置および数値制御方法
JP2012152883A (ja) * 2011-01-28 2012-08-16 Mori Seiki Co Ltd 工作機械、加工方法、プログラム及びncデータ生成装置
JP2017204072A (ja) * 2016-05-10 2017-11-16 Dmg森精機株式会社 加工プログラム処理装置およびこれを備えた多軸加工機
WO2020021793A1 (ja) * 2018-07-24 2020-01-30 三菱電機株式会社 工具経路修正装置、工具経路修正方法および数値制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123536A (ja) * 1994-10-25 1996-05-17 Fanuc Ltd 溶接トーチ姿勢の教示方法
JP2009245164A (ja) * 2008-03-31 2009-10-22 Mitsubishi Electric Corp 数値制御装置および数値制御方法
JP2012152883A (ja) * 2011-01-28 2012-08-16 Mori Seiki Co Ltd 工作機械、加工方法、プログラム及びncデータ生成装置
JP2017204072A (ja) * 2016-05-10 2017-11-16 Dmg森精機株式会社 加工プログラム処理装置およびこれを備えた多軸加工機
WO2020021793A1 (ja) * 2018-07-24 2020-01-30 三菱電機株式会社 工具経路修正装置、工具経路修正方法および数値制御装置

Also Published As

Publication number Publication date
TW202333008A (zh) 2023-08-16
JPWO2023135762A1 (ja) 2023-07-20
CN118338996A (zh) 2024-07-12
DE112022005340T5 (de) 2024-09-12

Similar Documents

Publication Publication Date Title
TWI673150B (zh) 機器人教示方法及機器臂控制裝置
JP6706489B2 (ja) ロボットのダイレクト教示方法
EP1644782B1 (en) Multiple robot arm tracking and mirror jog
KR101498836B1 (ko) 7축 다관절 로봇의 제어 장치 및 교시 방법
JP6683671B2 (ja) ジョグ座標系を設定するロボットの制御装置
JP2006048244A (ja) 加工プログラム作成装置
JP5458769B2 (ja) ロボットの制御装置
JP7144754B2 (ja) 多関節ロボットおよび多関節ロボットシステム
JP4888374B2 (ja) ロボットの動作制御装置及びその動作制御方法
JP2009066738A (ja) ロボットの教示装置
US11964391B2 (en) Robot system
WO2023135762A1 (ja) 制御装置、教示装置、及び機械システム
JPH0693209B2 (ja) ロボツトの円弧補間姿勢制御装置
JPH07334228A (ja) ロボットの教示データ補正装置
JP6429977B2 (ja) ロボット装置及びロボット制御方法
JP7424097B2 (ja) ロボットの制御装置及びロボットの制御方法
WO2023073958A1 (ja) プログラム作成装置、制御装置、及び機械システム
JP2567834B2 (ja) ロボツト制御デ−タの作成方法
JP7469457B2 (ja) ロボットプログラミング装置及びロボットプログラミング方法
US11712803B2 (en) Teaching method
WO2023162225A1 (ja) ロボット制御装置および多関節ロボット
WO2023002624A1 (ja) 機構データに基づいてロボットを制御するロボットの制御装置および動作プログラムの修正装置
WO2023112342A1 (ja) 教示装置、制御装置、及び機械システム
JP2022174858A (ja) 直接教示装置及び直接教示方法
JPH09155776A (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: 22920287

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023573764

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202280080087.0

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 112022005340

Country of ref document: DE