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

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

Info

Publication number
WO2019150726A1
WO2019150726A1 PCT/JP2018/043604 JP2018043604W WO2019150726A1 WO 2019150726 A1 WO2019150726 A1 WO 2019150726A1 JP 2018043604 W JP2018043604 W JP 2018043604W WO 2019150726 A1 WO2019150726 A1 WO 2019150726A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
end effector
robot
socket
sensor
Prior art date
Application number
PCT/JP2018/043604
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 US16/965,649 priority Critical patent/US11826902B2/en
Priority to JP2019568886A priority patent/JP6870122B2/ja
Priority to CN201880088368.4A priority patent/CN111670094B/zh
Publication of WO2019150726A1 publication Critical patent/WO2019150726A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/081Touching devices, e.g. pressure-sensitive
    • B25J13/084Tactile sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • 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
    • B25J15/00Gripping heads and other end effectors
    • B25J15/0019End effectors other than grippers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • B25J19/063Safety devices working only upon contact with an outside object
    • 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/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40625Tactile sensor

Definitions

  • the present invention relates to a robot system and a robot control method for correcting a displacement amount of an end effector with respect to a work when an end effector of the robot is brought into contact with the work.
  • the end effector and the work are imaged using a camera provided separately from the robot, and the reference position is determined from the captured image.
  • a non-contact detection type control device that calculates a target position of an end effector by recognizing an image of a work target region is disclosed.
  • Japanese Patent Laid-Open No. 2015-155126 discloses a force value or moment that converges the end effector to a target position (center position) with a plurality of multi-axis detection type force sensors attached to the end effector.
  • Contact detection type control that sets a value in advance and then performs feedback control (force sensation control) that causes the robot or end effector to follow a preset force value or moment value in actual work.
  • An apparatus is disclosed.
  • the control system can be configured at low cost.
  • the arrangement of the force sensor during actual work is restricted.
  • the surface of the work needs to correspond to the end effector, for example, the contact portion of the work with the end effector needs to be set to the C plane.
  • applicable operations are limited to specific operations such as fitting of pins and holes.
  • the present invention has been made in consideration of such problems, and an object thereof is to provide a low-cost and versatile robot system and a robot control method.
  • the amount of displacement of the end effector with respect to the workpiece is estimated based on the change in the contact state detected by the sensor, and the robot And / or a robot system that corrects the shift amount by controlling the end effector.
  • the robot system shows a control unit that controls the robot and / or the end effector, and a time change of the contact state when the control unit changes the contact state of the end effector to the workpiece.
  • a detection unit for detecting data, a learning unit for learning the data, and a learning result of the data in the learning unit, the end effector for the work in the actual work on the work by the end effector And a determination unit that determines a contact state.
  • the detection unit for each of a plurality of set positions on the surface of the workpiece, in advance, the change in the contact state detected by the sensor when the end effector is brought into contact with the set position, and the set position
  • the change in the contact state detected by the sensor when the end effector is hunted in the set operation range is detected as learning data.
  • the learning unit learns the plurality of detected learning data, and writes learning results of the plurality of learning data to the determination unit.
  • the determination unit acquires the change in the contact state detected by the sensor when the end effector contacts the surface of the workpiece during the actual work, and the acquired change in the contact state is written. Based on the learning result, the displacement of the end effector with respect to the workpiece is recognized.
  • the control unit estimates the shift amount based on a determination result in the determination unit.
  • the shift amount of the end effector with respect to the workpiece is estimated based on the change in the contact state detected by the sensor.
  • the present invention relates to a robot control method for correcting the shift amount by controlling the robot and / or the end effector. This control method has the following first to fifth steps.
  • the detection unit detects, as learning data, the change in the contact state detected by the sensor when the end effector is searched for.
  • the learning unit learns the detected learning data.
  • the learning results of the plurality of learning data in the learning unit are written in the determination unit.
  • the determination unit acquires and acquires the change in the contact state detected by the sensor when the end effector comes into contact with the surface of the workpiece during actual work of the end effector on the workpiece.
  • the shift of the end effector with respect to the workpiece is recognized based on the change in the contact state and the written learning result.
  • control unit estimates the deviation amount based on the determination result in the determination unit.
  • the shift amount of the end effector with respect to the workpiece is a shift amount in a multi-dimensional direction
  • the shift with respect to the workpiece is detected based on the change in the contact state detected by the single sensor.
  • the shift of the end effector is recognized, and the shift amount can be estimated based on the recognition result (judgment result). Therefore, in the present invention, the shift amount can be estimated with a simple system configuration as compared with the techniques of each of the above-mentioned publications, so that a low-cost and highly mountable system can be constructed.
  • the general FA device recognizes the contact state (displacement) without using a dedicated computer (PC), and uses the recognition result (judgment result) for the robot and / or the end effector. Can be controlled. Thereby, a high system operation rate can be achieved.
  • the learning unit learns a plurality of the data by causing the robot to fumble the end effector with respect to a plurality of set positions of the workpiece in a manner similar to a manual groping work,
  • the shift is recognized based on the learning result and the change in the contact state acquired in the actual work.
  • shift amount can be estimated easily.
  • the robustness against disturbances such as workpiece tolerance, workpiece installation layout variation, and workpiece shakiness is improved as compared with the technique disclosed in Japanese Patent Laid-Open No. 2015-155126.
  • the learning function based on artificial intelligence described above by using the learning function based on artificial intelligence described above, the acquisition of the learning data in the set operation range and the learning of the learning data are repeatedly performed, so that the autonomous contact state is achieved. Thus, it is possible to recognize the deviation and estimate the deviation amount. Thereby, the man-hour required for development and adjustment of the judgment logic for estimating this deviation
  • shift amount can be reduced. As a result, the system introduction period can be shortened.
  • the detection unit is configured to arbitrarily change the contact state detected by the sensor when the end effector is brought into contact with an arbitrary position on the surface of the workpiece, and the arbitrary position.
  • the change in the contact state detected by the sensor when the end effector is sought in the operation range is detected as actual data.
  • the determination unit determines the end of the work based on the detected actual data and the learning result of learning data similar to the actual data included in the written learning result. Recognize effector displacement.
  • the control unit can estimate the deviation amount with high accuracy. Therefore, in the present invention, a recognition / judgment processing system for estimating the deviation amount can be easily constructed.
  • the plurality of learning data have different characteristics depending on the type of deviation of the end effector from the workpiece. Therefore, the learning unit learns different features according to the type of deviation for the plurality of learning data.
  • the determination unit determines the type of deviation corresponding to the actual data by determining the contact state indicated by the actual data using the learning result during the actual work. Accordingly, the determination unit uses the learning result of the learning data according to the specified type of deviation included in the written learning result and the actual data to shift the end effector with respect to the workpiece. Recognize As a result, the control unit can estimate the deviation amount with higher accuracy.
  • control unit controls the robot and / or the end effector so that the contact state of the end effector with respect to the workpiece does not exceed a threshold value, or the end effector is moved within a movable range by an external force movable mechanism.
  • the end effector can be brought into contact with the workpiece without damaging the workpiece.
  • the senor is a contact sensor attached in the vicinity of the end effector in the robot, the change in the contact state can be easily detected, and further cost reduction and durability of the sensor can be achieved. Can be improved.
  • the contact sensor is attached to the robot substantially coaxially with the central axis of the end effector, or the contact sensor is attached to the robot in a state where the axis of the contact sensor is different from the central axis. Also good.
  • the end effector may be attached to the robot via the touch sensor. In any case, the change in the contact state can be easily detected.
  • the workpiece is a member that is assembled to the object or a member that is tightened to the object
  • the end effector is a tool that assembles the member to the object or a tool that tightens the object
  • FIG. 3 is a configuration diagram of a robot illustrating a contact force with respect to the socket of FIGS. 1 and 2 and a case where the nut runner moves linearly in the Z direction by the contact force.
  • FIG. 4 is a schematic perspective view illustrating a case where a linear movement mechanism for linearly moving the socket of FIGS. 1 to 3 in the Z direction is provided. It is an internal block diagram of the linear motion mechanism of FIG.
  • FIG. 4 is a schematic configuration diagram illustrating a case in which a linear motion mechanism that linearly moves the nutrunner of FIGS. 1 to 3 in the Z direction is provided.
  • FIG. 8A is an explanatory view showing a state before the nutrunner socket and the bolt are in contact with each other
  • FIG. 8B is an explanatory view showing a contact state when the socket and the bolt in FIG. 8A are fitted.
  • FIG. 9A is an explanatory diagram illustrating a state before contact between the socket and the bolt when the parallel displacement of the socket with respect to the bolt is occurring
  • FIG. 9B is an explanatory diagram illustrating a contact state between the socket and the bolt in FIG. 9A.
  • FIG. FIG. 10A is an explanatory diagram illustrating a state before contact between the socket and the bolt when the inclination of the socket with respect to the bolt is generated
  • FIG. 10B is an explanatory diagram illustrating a contact state between the socket and the bolt in FIG. 10A.
  • FIG. FIG. 11A is an explanatory diagram illustrating a contact state between the socket and the bolt when a phase shift of the socket with respect to the bolt occurs
  • FIG. 11B is an explanatory diagram illustrating a contact position between the socket and the bolt.
  • FIG. 12A is an explanatory view showing a state before contact between the socket and the bolt when the parallel / inclination deviation of the socket with respect to the bolt occurs
  • FIG. 12B shows a contact state between the socket and the bolt in FIG. 12A. It is explanatory drawing shown.
  • 14A to 14C are explanatory diagrams illustrating an example of a groping operation with respect to the bolt of the socket. It is the figure which showed the change of the torque which acts on a socket when a bolt is assembled
  • the robot system 10 includes a control device 12, a learning device 13, a robot 14 controlled by the control device 12 or the learning device 13, and an end effector such as a robot hand or a hand tool attached to the tip of the robot 14.
  • a nutrunner 16 and a sensor 18 attached to the tip of the robot 14 are provided.
  • the control device 12 is composed of a programmable logic controller (PLC), and implements the functions of the detection unit 12a, the control unit 12b, and the determination unit 12c by reading and executing a program stored in a memory (not shown).
  • the learning device 13 is mainly composed of a PC, and implements the function of the learning unit 13a having an artificial intelligence learning function by reading and executing a program stored in a memory (not shown).
  • the control device 12 and the learning device 13 can perform bidirectional data communication. In this case, at the time of learning in FIG. 1, the learning device 13 performs predetermined deep learning while controlling the robot 14, and supplies the learning result to the control device 12. On the other hand, at the time of the actual work of FIG. 2 after learning, the control device 12 controls the robot 14 and the nutrunner 16 using the learning result to perform a predetermined work.
  • the learning unit 13 a controls the robot 14, and the detection unit 12 a generates (detects) waveform data (learning waveform data) described later from the detection result of the sensor 18.
  • the learning unit 13a learns the learning waveform data (learning data) detected by the detection unit 12a, and writes the learning result to the determination unit 12c.
  • the control unit 12b controls the robot 14 and the nutrunner 16, and the detection unit 12a detects waveform data (actual waveform data) described later from the detection result of the sensor 18.
  • the determination unit 12c performs a predetermined recognition process (determination process) on the actual waveform data (actual data) detected by the detection unit 12a using the learning result.
  • the control unit 12b controls the robot 14 and the nut runner 16 based on the recognition result (determination result) in the determination unit 12c, thereby causing the robot 14 and the nut runner 16 to perform a predetermined operation.
  • the learning unit 13a functions as the control unit 12b during learning.
  • the control device 12 may be realized by one PLC, or each process of the detection unit 12a, the control unit 12b, and the determination unit 12c is assigned using a plurality of PLCs. Thus, parallel processing may be performed.
  • the learning device 13 having the learning unit 13a and the control device 12 having the detection unit 12a, the control unit 12b, and the determination unit 12c may be separate devices from the viewpoint of processing load. That is, the learning operation requires a very large memory capacity and calculation capacity, and thus the PC mainly functions as the learning device 13.
  • predetermined recognition processing and control processing are performed using the parameters of the learning result, so that it is sufficient to have the minimum necessary memory capacity and calculation capacity. Accordingly, the PLC, which is a general FA device, functions as the control device 12.
  • the robot 14 may be, for example, a 6-axis articulated robot. That is, the robot 14 includes a first base 14a, a second base 14b, a first arm 14c, a first joint part 14d, a second arm 14e, a second joint part 14f, and a distal end as mounting bases as base ends.
  • the end effector attaching / detaching part 14g which is a part, is connected in this order.
  • a sensor 18 and a nut runner 16 are attached to the end effector attaching / detaching portion 14g.
  • the second base 14b is pivotally supported by the first base 14a so as to be rotatable (rotatable) about a first axis j1 that is a vertical axis (Z axis in the direction of gravity).
  • the first arm 14c is pivotally supported by the second base 14b so as to be able to be lifted (rotatable) about a second axis j2 which is a horizontal axis (X axis or Y axis) orthogonal to the vertical axis.
  • the first joint portion 14d is pivotally supported at the distal end portion of the first arm 14c so as to be able to be lifted (rotatable) about a third axis j3 parallel to the second axis j2.
  • the second arm 14e is pivotally supported by the first joint portion 14d so as to be rotatable about a fourth axis j4 along a direction (longitudinal direction) from the first joint portion 14d toward the distal end portion of the second arm 14e.
  • the second joint portion 14f is pivotally supported at the distal end portion of the second arm 14e so as to be rotatable about a fifth axis j5 parallel to the third axis j3.
  • the end effector attaching / detaching portion 14g is pivotally supported by the second joint portion 14f so as to be rotatable about a sixth axis j6 along the direction from the second joint portion 14f toward the tip portion.
  • the sensor 18 is, for example, a contact sensor capable of detecting a six-axis component (a force component in the three axial directions of the X, Y, and Z axes, and a moment component in the three axial directions of the X, Y, and Z axes). is there.
  • the upper surface of the sensor 18 is attached to the tip of the end effector attaching / detaching portion 14g so that the sensor 18 is substantially coaxial with the sixth axis j6.
  • a nut runner support member 20 is attached to the bottom surface of the sensor 18 opposite to the end effector attaching / detaching portion 14g.
  • the nut runner support member 20 is a plate-like member extending in a direction orthogonal to the sixth axis j6.
  • the bottom surface of the sensor 18 is attached to one end portion of the nut runner support member 20, and the nut runner 16 is attached to the other end portion of the nut runner support member 20 substantially parallel to the sixth axis j6. Therefore, the nut runner 16 is attached to the end effector attaching / detaching portion 14 g via the nut runner support member 20 and the sensor 18.
  • side plates 22 for holding wiring (not shown) drawn from the nut runner 16 and the sensor 18 are provided on both side surfaces of the nut runner support member 20 along the longitudinal direction of the nut runner support member 20.
  • the nut runner 16 is attached to a columnar drive portion 16a supported by the nut runner support member 20 and a tip (lower end) of a shaft 16b of the nut runner 16 extending downward from the drive portion 16a, and the shaft 16b is driven by the drive portion 16a.
  • a rotatable socket 16c is provided at the center.
  • the drive unit 16a is supported in a state where the nut runner support member 20 is inserted substantially parallel to the sixth axis j6. Therefore, the shaft 16b of the nut runner 16 extends downward substantially parallel to the sixth shaft j6.
  • the socket 16c has a recess 16d that can be fitted to a head portion 26 of a bolt 24 as a workpiece.
  • the bolt 24 is screwed into a screw hole of an object 28 such as a vehicle body or a motor arranged on a work table (not shown).
  • the robot system 10 is not limited to the case where the workpiece is the bolt 24, and may be a member assembled to the object 28 or a member fastened to the object 28. Therefore, in the robot system 10, the end effector is not limited to the nut runner 16, and may be a tool (hand tool) for assembling or tightening the above-described member on the object 28. That is, in the robot system 10, not only tightening work but also various assembly work by a robot hand or hand tool (end effector), for example, fitting of dowel pins, fitting of couplers and connectors, bolts and tapping holes Axis alignment and fitting of various shaft members and holes can be performed. Further, the workpiece may be a part used for fitting and assembly as well as the fastening member.
  • the bolt 24 as a workpiece is a hexagon bolt with a flange 30, and the hexagonal recess 16 d in the socket 16 c of the nut runner 16 as an end effector is fitted to the head portion 26 of the hexagon bolt. The case will be described.
  • the control unit 12b of the control device 12 supplies a control signal to the robot 14 to drive a motor (not shown) inside the robot 14 and rotate the motor shafts (first to sixth axes j1 to j6).
  • the robot 14 is operated.
  • the recess 16 d of the socket 16 c can be fitted to the head portion 26 of the bolt 24.
  • the control unit 12b supplies a control signal to the nut runner 16 to drive the drive unit 16a of the nut runner 16 and rotate the socket 16c around the shaft 16b.
  • the assembly work and the fastening work of the bolt 24 with respect to the object 28 can be performed.
  • the sensor 18 changes the contact state of the socket 16c with the bolt 24, specifically, the contact force (reaction force) 3 received by the socket 16c from the bolt 24.
  • the axial components and the triaxial components of the contact force moment are sequentially detected, and the detection results of these six axial components are sequentially output to the control device 12. Since the sensor 18 only needs to be able to detect a change in the contact state of the socket 16c with the bolt 24, the sensor 18 may not be arranged coaxially with the nut runner 16 as shown in FIG. Of course, when the nut runner 16 is arranged substantially coaxially, it is possible to detect a change in contact force.
  • the sensor 18 may be a torque sensor that is provided in the vicinity of the first to sixth axes j1 to j6 and detects the torque of the motor.
  • the plurality of torque sensors detect the torque of the motor and output the detection result to the control device 12.
  • the detection part 12a of the control apparatus 12 should just estimate the change of the contact force of the socket 16c with respect to the volt
  • the sensor 18 only needs to be able to detect a change in the contact state of the socket 16c with the bolt 24. Therefore, an acoustic sensor such as a microphone that detects sound generated when the contact state between the socket 16c and the bolt 24 changes, or a socket Various vibration sensors that detect vibrations that occur when the contact state between the 16c and the bolt 24 changes may be used. Further, when the sensor 18 is a non-contact type sensor such as an acoustic sensor, the sensor 18 may be disposed in the vicinity of the socket 16 c and the bolt 24 without being attached to the robot 14. In any case, the detection unit 12a of the control device 12 can detect the time change of the contact state between the socket 16c and the bolt 24 from the detection result of the sensor 18 as waveform data.
  • the learning unit 13a of the learning device 13 controls the robot 14 to execute a groping operation for bringing the socket 16c into contact with the head 26 of the bolt 24.
  • the groping operation is a technique similar to that of manual groping, and the contact state of the socket 16c with the head 26 of the bolt 24 is changed, so that the recess 16d of the socket 16c and the head 26 of the bolt 24 are moved.
  • the work for fitting. Therefore, the groping operation may be any operation as long as it changes the contact state between the end effector (nut runner 16) and the workpiece (bolt 24).
  • the rotation of the socket 16c with respect to the bolt 24, which will be described later the horizontal movement that translates the socket 16c with respect to the bolt 24 in the X direction and the Y direction, the twist in the tightening axis direction (Z direction) of the bolt 24, or the rotation
  • a vibration imparting mechanism (not shown) is attached to the end effector (nut runner 16), and various vibrations (for example, ultrasonic vibration) are imparted from the vibration imparting mechanism to the end effector in a state where the end effector and the workpiece are in contact with each other. By doing so, it is possible to perform a groping operation.
  • the detection unit 12a of the control device 12 performs, for example, a Z-axis component (contact force Fz) of the contact force F (see FIGS. 3 and 4) based on the six-axis component input from the sensor 18 during the groping operation. Is detected as learning waveform data, and the detected learning waveform data is supplied to the learning unit 13a. The learning unit 13a learns the characteristics of the supplied learning waveform data and writes the learning result to the determination unit 12c. Details of the function and groping operation of the learning unit 13a will be described later.
  • the control unit 12b of the control device 12 controls the robot 14 and the nut runner 16 so that the socket 16c and the head portion 26 of the bolt 24 are fitted to each other. 28.
  • the detection unit 12a detects, for example, the passage of time of the contact force Fz as actual waveform data based on the six-axis components input from the sensor 18, and supplies the detected actual waveform data to the determination unit 12c. .
  • the determination unit 12c recognizes the contact state indicated by the supplied actual waveform data using the learning result written at the time of learning, and determines the contact state, that is, the displacement of the socket 16c with respect to the head 26 of the bolt 24 from the recognition result. Recognize (determine) the presence or absence of The recognition result (determination result) in the determination unit 12c is supplied to the control unit 12b. Based on the supplied recognition result, the controller 12b estimates the amount of displacement of the socket 16c with respect to the head 26 of the bolt 24, and controls the robot 14 and the nutrunner 16 using the estimated amount of displacement as a control amount. As a result, it is possible to accurately perform the assembly work and the tightening work of the bolt 24 with respect to the object 28. Details of the function of the determination unit 12c and the actual work will be described later.
  • the detection unit 12a detects the waveform data for learning at the time of learning and the processing for detecting the actual waveform data at the time of actual work.
  • data processing such as mathematical expression processing instead of the waveform data processing as described above.
  • the detection unit 12a detects the data of the contact force Fz as learning data based on the six-axis components sequentially input from the sensor 18 during learning, while sequentially detecting from the sensor 18 during actual work. Based on the input six-axis components, the data of the contact force Fz may be detected as actual data.
  • the learning unit 13a can learn the characteristics of the learning data by deep learning, and write the learning result in the determination unit 12c.
  • the determination unit 12c recognizes the contact state indicated by the actual data by mathematical processing or the like using the written learning result, and recognizes the presence or absence of the displacement of the socket 16c with respect to the head 26 of the bolt 24 from the recognition result. can do.
  • the detection unit 12a detects learning waveform data during learning, while the detection unit 12a detects actual waveform data during actual work.
  • FIGS. 1 and 2 schematically illustrate the configuration around the nutrunner 16.
  • a specific configuration around the nut runner 16 will be described with reference to FIGS.
  • the socket 16c when the socket 16c comes into contact with the head portion 26 (see FIGS. 1 and 2) of the bolt 24, the socket 16c receives a load of contact force F (Fz). In this case, it is necessary to reduce the load on the socket 16c while bringing the bolt 24 and the socket 16c into contact so that the contact force F of the socket 16c with respect to the bolt 24 does not exceed the threshold value.
  • the threshold value means an upper limit value of the contact force F that does not damage the bolt 24 (the maximum value of the load applied to the bolt 24).
  • FIGS. 4 to 7 embody the correspondence of the above (2), and a linear motion mechanism 27 (see FIGS. 4 and 5) or a linear motion mechanism 29 (see FIGS. 6 and 7) as an external force movable mechanism. ) Is provided on the nutrunner 16.
  • the linear motion mechanism 27 is provided between the drive portion 16a and the shaft 16b of the nut runner 16 and the socket 16c.
  • the linear motion mechanism 27 includes a stepped rod 27a extending in the Z direction. One end of the rod 27 a is fitted to the shaft 16 b of the nut runner 16. The other end of the rod 27a is inserted into a cylindrical connecting member 27b extending in the Z direction.
  • the connecting member 27b is provided with a flange at one end of the connecting member 27b into which the rod 27a is inserted.
  • the base end of the socket 16c is fitted to the other end of the connecting member 27b.
  • the bearing holder 27c which accommodates the rod 27a and the one end part side of the connection member 27b is arrange
  • the bearing holder 27c is a stepped cylindrical member extending in the Z direction, and a flange 27d is formed at one end of the drive unit 16a.
  • the flange 27d is sandwiched between one plate 27e fixed to the drive unit 16a and the other plate 27f on the socket 16c side.
  • the bearing holder 27c is fixed to the drive part 16a by fastening the two plate bodies 27e and 27f and the flange 27d together with the screw member 27g.
  • Two bearings 27h are provided between the flange 27d side of the inner peripheral surface of the bearing holder 27c and one end side of the outer peripheral surface of the rod 27a. Further, one end portion (flange) of the connecting member 27b is engaged with a protrusion 27i formed on the inner peripheral surface of the bearing holder 27c. Thereby, the socket 16c and the connecting member 27b are prevented from projecting toward the socket 16c from the position shown in FIG. Further, a spring 27j is interposed between one end of the connecting member 27b and one end of the rod 27a. The spring 27j has a resilient force in a direction toward the socket 16c (a direction opposite to the contact force Fz).
  • the nut runner 16 and the linear motion mechanism 27 can be supported by the nut runner support member 20 by fixing the drive unit 16a or the bearing holder 27c to the nut runner support member 20 (see FIGS. 1 to 3).
  • the linear motion mechanism 29 shown in FIGS. 6 and 7 is configured such that the stroke amount in the Z direction of the entire nut runner 16 changes linearly with respect to the value of the contact force F (Fz).
  • the linear motion mechanism 29 is provided in the drive unit 16 a of the nut runner 16.
  • the linear motion mechanism 29 extends substantially parallel to the nut runner support member 20, extends to the base lower plate 29 a fixed to the lower end portion of the drive portion 16 a, and extends substantially parallel to the nut runner support member 20, and is fixed to the center portion of the drive portion 16 a.
  • a base upper plate 29b a base upper plate 29b.
  • the base lower plate 29a and the base upper plate 29b are connected by four linear motion rods 29c extending in the Z direction.
  • the four linear motion rods 29c pass through the nut runner support member 20 through the four cylindrical holders 29d provided in the Z direction so that the base lower plate 29a and the base upper plate 29b are connected to each other. Link.
  • springs 29e are inserted between the base lower plate 29a and the holder 29d, respectively.
  • Each spring 29e has a resilient force in a direction toward the socket 16c (a direction opposite to the contact force Fz).
  • a plurality of rods 29f extending through the nut runner support member 20 and extending upward are provided from the base lower plate 29a.
  • the linear motion mechanism 29 further includes a damper 29g fixed to the nut runner support member 20 and having a tip portion connected to the base lower plate 29a.
  • the nut runner 16 and the linear motion mechanism 29 are supported by the nut runner support member 20 via the base upper plate 29b and the holder 29d.
  • the spring 29e is linearly deformed in the Z direction with respect to the value of the contact force Fz.
  • the stroke amount of the base lower plate 29a, the base upper plate 29b, the direct acting rod 29c, the rod 29f, and the nut runner 16 can be linearly changed with respect to the contact force Fz.
  • the amount of contraction of each spring 29e becomes the stroke amount, that is, the movable range of the nut runner 16.
  • the damper 29g absorbs vibration and impact generated in the nut runner 16 and the base lower plate 29a by receiving the contact force Fz.
  • FIG. 8A and FIG. 8B are explanatory diagrams in the case where various displacements have not occurred between the socket 16c and the bolt 24.
  • FIGS. 9A to 12B are explanatory views illustrating a case where some deviation occurs between the socket 16c and the bolt 24.
  • FIG. 9A to 12B are explanatory views illustrating a case where some deviation occurs between the socket 16c and the bolt 24.
  • the center axis 32 of the socket 16c (the axis 16b of the nut runner 16 shown in FIGS. 1 and 2) and the center axis 34 of the bolt 24 are substantially coaxial, and various misalignments described later do not occur. Therefore, when the socket 16c is lowered along the Z axis, the recess 16d of the socket 16c and the head portion 26 of the bolt 24 are fitted as shown in FIG. 8B.
  • FIG. 8B the contact location between the socket 16c and the bolt 24 is shown by a thick solid line. That is, in FIG. 8B, the recess 16d of the socket 16c and the head portion 26 of the bolt 24 are in surface contact, and the tip of the socket 16c and the flange 30 of the head portion 26 of the bolt 24 are in line contact or surface contact.
  • FIGS. 9A and 9B illustrate a case where the center axis 32 of the socket 16c is displaced relative to the center axis 34 of the bolt 24 in the Y direction.
  • parallel displacement the case where the two central axes 32 and 34 are displaced relatively in parallel.
  • the tip of the socket 16c comes into contact with the head 26 of the bolt 24, and the recess 16d of the socket 16c and the head 26 of the bolt 24 Cannot be fitted. That is, the tip of the socket 16c and the head 26 of the bolt 24 are in line contact or surface contact.
  • the socket 16c can perform a groping operation that rotates in the direction of the arrow around the contact point of the bolt 24 with the head portion 26.
  • FIG. 10A and 10B illustrate a case where the central axis 32 of the socket 16c is inclined by an angle ⁇ with respect to the central axis 34 of the bolt 24.
  • FIG. 10B the case where the other central axis is inclined with respect to one central axis is referred to as “inclination shift”.
  • inclination shift the case where the other central axis is inclined with respect to one central axis.
  • FIG. 10B when the socket 16c is lowered along the Z axis, as shown in FIG. 10B, a part of the head portion 26 of the bolt 24 is inserted into the recess 16d of the socket 16c, and the tip of the socket 16c is the head of the bolt 24. It is in contact with the flange 30 of the portion 26.
  • the recess 16d of the socket 16c and the head portion 26 of the bolt 24 cannot be fitted.
  • the tip of the socket 16c and the flange 30 of the head portion 26 of the bolt 24 are in point contact or line contact. Further, in the inclination shift, the socket 16c can perform a groping operation that rotates in the direction of the arrow around a contact point (a point indicated by a large point in FIG. 10B) with the flange 30 of the head portion 26 of the bolt 24.
  • phase shift the case where the phase of the socket 16c is shifted from the phase of the bolt 24 is referred to as “phase shift”.
  • the socket 16c is lowered along the Z axis, a part of the head portion 26 of the bolt 24 is inserted into the recess portion 16d of the socket 16c, and the recess portion 16d of the socket 16c and the head portion 26 of the bolt 24 are Cannot be fitted. That is, the recess 16d of the socket 16c and the six apexes of the head 26 of the bolt 24 are in point contact.
  • FIGS. 12A and 12B illustrate a case where both the parallel shift of FIGS. 9A and 9B and the tilt shift of FIGS. 10A and 10B occur.
  • parallel / tilt shift such a shift is referred to as “parallel / tilt shift”.
  • the tip of the socket 16c comes into contact with the head 26 of the bolt 24, and the recess 16d of the socket 16c and the head 26 of the bolt 24 Cannot be fitted. That is, the tip of the socket 16c and the head portion 26 of the bolt 24 are in point contact or line contact. Further, in parallel / inclination deviation, the socket 16c can perform a groping operation that rotates in the direction of the arrow around a contact point (a large dot in FIG. 12B) with the head 26 of the bolt 24.
  • FIG. 13 shows the elapsed time from the start of lowering of the socket 16c and the contact force (reaction force) of the socket 16c with respect to the bolt 24 when the socket 16c is lowered with respect to the bolt 24 in the case of FIGS. 8A to 12B. It is a figure which shows the relationship.
  • the contact force in FIG. 13 is, for example, the Z-direction component (contact force Fz) of the reaction force that the socket 16c receives from the bolt 24.
  • the elapsed time (stroke) from when the socket 16c starts to descend until the socket 16c contacts (contacts) the head portion 26 of the bolt 24 is referred to as arrival time.
  • the contact force Fz is approximately 0 level until reaching the arrival time, while increasing linearly with the passage of time after the arrival time.
  • the temporal change (inclination) of the contact force Fz after the arrival time has different characteristics depending on the type of deviation.
  • FIGS. 14A to 14C are explanatory views illustrating a groping operation for the bolt 24 of the socket 16c by the robot 14.
  • FIG. 14A to 14C illustrate the case of parallel displacement (see FIGS. 9A and 9B) as an example.
  • the socket 16c rotates counterclockwise around the contact point indicated by a large point on the paper surface in FIG. 14A. 14B and FIG. 14C are obtained.
  • the distance between the upper end of the head portion 26 of the bolt 24 and the lower end of the socket 16 c is an interference margin di between the socket 16 c and the bolt 24.
  • the robot system 10 includes the linear motion mechanisms 27 and 29 (see FIGS. 4 to 7), the springs 27j and 29e are contracted by an amount corresponding to the interference allowance di, so that the stroke amount of the socket 16c or the nut runner 16 in the Z direction is increased. Converted. As a result, when the socket 16c is rotated by groping, the linear motion mechanisms 27 and 29 linearly move the socket 16c or the nut runner 16 in the Z direction according to the value of the contact force Fz, thereby reducing the load on the socket 16c. be able to.
  • the contact force Fz is transmitted to the sensor 18 attached to the nut runner support member 20 through the springs 27j and 29e, the nut runner support member 20, and the like.
  • the sensor 18 can easily detect the contact force Fz even if it is not coaxial with the central axis 32 of the socket 16c.
  • the robot system 10 is not limited to the above-described parallel displacement, and the load on the socket 16c is reduced when a groping operation is performed even in the case of other types of displacement (see FIGS. 10A to 12B).
  • the contact force Fz can be detected.
  • FIG. 15 is a diagram showing the relationship between the rotation angle ⁇ and the torque acting on the socket 16c when the socket 16c is rotated around the central axis 32 and the bolt 24 is fastened to the object 28.
  • the rotation angle ⁇ is an angle according to time.
  • a solid line is a result when the socket 16c is rotated in a state where the central axes 32 and 34 are substantially coaxial (see FIG. 8B).
  • a broken line is a result when the socket 16c is rotated in a state where parallel displacement (see FIG. 9B) or biting occurs.
  • the alternate long and short dash line is a result when the socket 16c is rotated in a state where the socket 16c is not in contact with the bolt 24.
  • the bolt 24 can be normally tightened using the socket 16c. Accordingly, by comparing the normal result of the solid line with the result of the actual tightening operation, it is possible to detect whether or not a deviation has occurred and whether or not an abnormality has occurred in the assembly work or the tightening work.
  • FIG. 16 is a diagram showing the change over time of the moment acting on the socket 16c when the bolt 24 is tightened using the socket 16c.
  • a solid line is a result in a state where the socket 16c and the bolt 24 are fitted, and a broken line is a result in a state where a phase shift (see FIGS. 11A and 11B) occurs. If it is the result of the continuous line of FIG. 16, it is possible to clamp
  • step S1 of FIG. 17 the learning unit 13a of the learning device 13 supplies a control signal corresponding to the learning condition data to the robot 14 to drive the motor.
  • the robot 14 starts operating, and the nut runner 16 attached to the end effector attaching / detaching portion 14g starts to descend, thereby starting the position control of the socket 16c.
  • the sensor 18 starts detecting the contact state (for example, contact force (reaction force)) of the socket 16c with the bolt 24.
  • the sensor 18 sequentially outputs detection results to the control device 12.
  • the same types of sockets 16c and bolts 24 as the sockets 16c and bolts 24 used in actual work described later are used.
  • a substantially zero level detection result is sequentially output from the sensor 18 to the control device 12. Further, the detection unit 12a of the control device 12 measures time from the descent start time of the nutrunner 16, links the detection result (contact force) from the sensor 18 and the elapsed time from the descent start time, and stores a memory (not shown). To remember.
  • the socket 16c When the socket 16c comes into contact with the bolt 24, the socket 16c receives a reaction force from the bolt 24 to press the head portion 26 of the bolt 24.
  • the nut runner 16 is provided with linear motion mechanisms 27 and 29 for linearly moving the socket 16c or the nut runner 16 in the Z direction according to the value of the reaction force (contact force). Therefore, even when the socket 16c receives a contact force from the bolt 24, the load on the socket 16c can be reduced.
  • the sensor 18 detects the contact force transmitted from the nut runner 16 or the linear motion mechanisms 27 and 29 via the nut runner support member 20, and sequentially outputs the detection result to the detection unit 12a.
  • the detection unit 12a indicates that the socket 16c is in contact with the bolt 24 from the relationship between the magnitude of the contact force of the socket 24c with respect to the head portion 26 of the bolt 24 (for example, the contact force Fz that is the Z direction component) and the elapsed time. Can be recognized. That is, the detection unit 12a can obtain the result of the change in the contact force Fz over time from the elapsed time and the contact force Fz.
  • step S2 the learning unit 13a is in a state where the socket 16c and the head portion 26 of the bolt 24 are in contact with each other, for example, on the YZ plane as shown in FIG.
  • the robot 14 is controlled so that the socket 16c pivots clockwise and counterclockwise around the contact position (set position indicated by a large point) between the socket 16c and the head 26 of the bolt 24.
  • d is the distance between the central shaft 34 and the contact point of the socket 16 c with the head portion 26 of the bolt 24.
  • the order of the direction in which the socket 16c is rotated with respect to the set position and the range in which the socket 16c is rotated with respect to the set position may be set as appropriate.
  • the control unit 12b controls the robot 14 so that the contact force does not exceed a predetermined threshold value so that the socket 16c contacts the head portion 26 of the bolt 24.
  • the threshold value means an upper limit value of the contact force that does not damage the bolt 24 (the maximum value of the load applied to the bolt 24).
  • the sensor 18 sequentially detects the contact force with respect to the head portion 26 of the bolt 24 of the socket 16c, and outputs the detection result to the control device 12.
  • the detection unit 12a stores the detection results of the sensors 18 that are sequentially input in a memory in association with the elapsed time. As a result, the detection unit 12a can collect (detect) waveform data (learning waveform data) indicating the relationship between the elapsed time and the contact force (contact force Fz of the Z direction component) as shown in FIG. . Then, the detection unit 12a supplies the detected waveform data for learning to the learning unit 13a.
  • the elapsed time which is the horizontal axis of the waveform data for learning, is an angle ⁇ with respect to the central axis 32 of the bolt 24. It will be compatible.
  • the learning unit 13a learns the collected learning waveform data by deep learning.
  • the learning unit 13a learns the characteristics of the learning waveform data, that is, the characteristics of the temporal change in the contact force Fz due to the shift (the tendency of the waveform in FIG. 20) using a known neural network. Since the deep learning method is known, detailed description thereof is omitted.
  • step S4 the learning unit 13a determines whether deep learning is repeatedly performed on the learning waveform data.
  • step S4 the learning unit 13a determines that further learning is necessary (step S4: YES). Then, the learning unit 13a returns to step S1 and performs a groping operation for further learning.
  • the learning unit 13a can surely learn the waveform characteristics for the same shift and the waveform characteristics for different shift types. That is, the learning unit 13a can learn features according to various types of deviations by repeatedly performing the processes of steps S1 to S4 for each type of deviation.
  • FIG. 20 a plurality of waveform data for learning when the processes of steps S1 to S4 are repeatedly performed are superimposed.
  • the setting position of the bolt 24 on the surface of the head portion 26 is changed, and the processing of steps S1 to S4 is performed to acquire learning waveform data for each of the plurality of setting positions.
  • the feature of deviation can be learned at 13a.
  • the detection unit 12a detects the results of FIGS. 13, 15, and 16 as learning waveform data, and the learning unit 13a It is also possible to learn the waveform data for learning.
  • step S4 when it is determined that the waveform has been sufficiently learned according to various deviations assumed in the actual work (step S4: NO), the learning unit 13a proceeds to the next step S5.
  • step S5 the learning unit 13a terminates the deep learning using the learning waveform data and instructs the robot 14 to terminate the contact operation between the socket 16c and the bolt 24.
  • the robot 14 retracts the nut runner 16 upward and separates the socket 16c from the head portion 26 of the bolt 24.
  • step S6 (third step) after collecting the waveform data for learning in this way and learning the characteristics of the waveform in advance, the learning unit 13a writes the learning results of the plurality of waveform data for learning to the determination unit 12c. . Thereafter, the robot system 10 performs the actual work shown in the flowchart of FIG.
  • FIG. 21 is an explanatory diagram illustrating the outline of the actual work process, and generally corresponds to each step of FIG.
  • step S11 of FIG. 18 the control unit 12b controls the robot 14 to lower the nut runner 16 and bring the socket 16c into contact with the head 26 of the bolt 24, thereby tightening the bolt 24 using the socket 16c. Start the attachment operation.
  • step S12 the drive portion 16a of the nut runner 16 is driven, the shaft 16b and the socket 16c rotate about the central shaft 32, and the bolt 24 is tightened on the object 28.
  • the detector 12a collects (detects) waveform data (actual waveform data) of torque acting on the socket 16c shown in FIG.
  • the detection unit 12a can calculate the torque using the moment component detected by the sensor 18.
  • the detected actual waveform data is supplied to the determination unit 12c.
  • the determination unit 12c determines that the actual waveform data has some deviation based on the supplied actual waveform data and the learning result of the learning waveform data related to torque among the learning results written in advance. It is determined whether or not there is an abnormal waveform. In this case, if the actual waveform data is, for example, waveform data indicated by a broken line in FIG. 15, the determination unit 12c determines that the waveform is an abnormal waveform (step S14: YES), and proceeds to step S15.
  • the judgment unit 12c since the judgment unit 12c has an abnormal waveform, it corrects the displacement of the socket 16c with respect to the bolt 24 and activates a retry mode for correcting to a normal tightening state.
  • step S16 the control unit 12b controls the robot 14 based on the determination result in the determination unit 12c to execute a groping operation of the socket 16c with respect to the bolt 24.
  • the groping operation similar to step S2 in FIG. 17 may be performed.
  • step S17 the sensor 18 detects the contact state of the socket 16c with the bolt 24, and sequentially outputs the detection result to the detection unit 12a.
  • the detector 12a can detect actual waveform data indicating the relationship between the contact force Fz and time shown in FIG. Then, the detection unit 12a supplies the detected actual waveform data to the determination unit 12c.
  • step S18 when the actual waveform data is supplied to the determination unit 12c, in the next step S19, the determination unit 12c includes the supplied actual waveform data and the learning result written in advance. Based on the learning result of the learning waveform data (see FIG. 20) regarding the contact force, the contact state between the socket 16c and the bolt 24 indicated by the actual waveform data, that is, the displacement of the socket 16c with respect to the bolt 24 is recognized. Identify the type of displacement. The recognition result (judgment result) for the deviation in the judgment unit 12c is supplied to the control unit 12b.
  • step S20 the control unit 12b calculates (estimates) the shift amount of the socket 16c with respect to the bolt 24 based on the recognition result (judgment result) in step S19.
  • step S21 the control unit 12b controls the robot 14 using the estimated deviation amount as a control amount, so that the central axis 32 of the socket 16c and the central axis 34 of the bolt 24 are shown in FIGS. The amount of deviation is corrected so that is substantially coaxial.
  • the determination unit 12c determines whether or not the socket 16c and the bolt 24 are fitted as a result of correcting the position of the socket 16c in step S21.
  • actual waveform data as shown in FIG. 13 is detected by the detection unit 12a, and the determination unit 12c is based on the detected waveform data and the learning result of the learning waveform data according to FIG. The presence / absence of the fitting between the socket 16c and the bolt 24 may be determined.
  • step S22 NO
  • the process returns to step S16, and the retry mode is continuously executed.
  • step S22: YES the process proceeds to step S23, and the determination unit 12c completes the retry mode and displays the determination result in step S22.
  • the control unit 12b controls the nut runner 16 to rotate the shaft 16b and the socket 16c, and executes the tightening operation of the bolt 24.
  • step S25 the control unit 12b stops driving the nut runner 16, and 14, the nut runner 16 is retracted upward, and the socket 16 c is separated from the head portion 26 of the bolt 24. Thereby, a series of tightening operations on the bolt 24 is completed.
  • the determination of the completion of the tightening of the bolt 24 in step S24 is, for example, determined that the tightening is completed when the contact force detected by the sensor 18 reaches a predetermined value, or predetermined from the start of the tightening operation. What is necessary is just to judge that tightening is completed when time passes.
  • step S24 If it is determined in step S24 that tightening of the bolt 24 has not been completed (step S24: NO), the process returns to step S12, and the processes after step S12 are executed again. If the actual waveform data is not an abnormal waveform in step S14 (step S14: NO), the determination unit 12c determines that the socket 16c and the bolt 24 are fitted, and performs the processing of steps S15 to S23. Skip and execute the process of step S24.
  • the retry mode of steps S15 to S22 is activated only when the actual waveform data indicates the occurrence of deviation in step S14, and the deviation is corrected.
  • the success rate of tightening the bolts 24 can be increased while minimizing.
  • step S21 the robot 14 is controlled so that the socket 16c is moved in the X or Y direction so that the two central axes 32 and 34 are substantially coaxial. What is necessary is just to translate along.
  • step S21 the nut runner 16 is controlled so that the recess 16d of the socket 16c and the head portion 26 of the bolt 24 are in phase. What is necessary is just to rotate around the central axis 32.
  • step S21 by applying a correction method of the deviation amount due to the tilt deviation and parallel deviation, the two central axes 32 and 34 are substantially coaxial. It is sufficient to correct it.
  • the displacement amount of the socket 16c attached to the shaft 16b of the nut runner 16 with respect to the bolt 24 is the displacement amount in the multidimensional direction. Even if it exists, based on the change of the contact state of the socket 16c and the volt
  • the learning waveform data is one-dimensional time change logging data, it is easier to handle the acquired contact state change data as compared with the techniques of the above-mentioned publications.
  • the contact state (displacement) is recognized in a general FA device without using a dedicated computer (PC), and the robot 14 and / or the nutrunner 16 is controlled using this recognition result (judgment result). It becomes possible. Thereby, a high system operation rate can be achieved.
  • the robot 14 grapples the socket 16c with respect to a plurality of set positions of the bolts 24 in the same manner as a manual groping work, so that the learning unit 13a learns a plurality of learning waveform data.
  • the determination unit 12c recognizes the deviation based on the learning result and the change in the contact state (actual waveform data) acquired during the actual work. Thereby, in the control part 12b, deviation
  • shift amount can be estimated easily.
  • the robustness against disturbances such as the tolerances of the bolts 24, variations in the installation layout of the bolts 24, and rattling of the bolts 24 is improved as compared with the technique disclosed in Japanese Patent Application Laid-Open No. 2015-155126.
  • the learning function based on artificial intelligence by using the learning function based on artificial intelligence, the acquisition of the waveform data for learning in the set operation range and the learning of the waveform data for learning are repeated, so that the contact state is autonomously obtained. It is possible to acquire features, recognize deviations, and estimate deviations. Thereby, the man-hour required for development and adjustment of the judgment logic for estimating this deviation
  • shift amount can be reduced. As a result, the introduction period of the robot system 10 can be shortened.
  • the detection unit 12a changes the contact state detected by the sensor 18 when the socket 16c is brought into contact with an arbitrary position on the surface of the bolt 24, and performs an arbitrary operation with respect to the arbitrary position.
  • the change in the contact state detected by the sensor 18 when the socket 16c is searched in the range is detected as actual waveform data.
  • the determination unit 12c can connect the socket to the bolt 24 based on the detected actual waveform data and the learning result of the learning waveform data similar to the actual waveform data included in the written learning result. Recognize the displacement of 16c.
  • the control unit 12b can accurately estimate the amount of deviation. Therefore, in this embodiment, a recognition / judgment processing system for estimating the deviation amount can be easily constructed.
  • the plurality of learning waveform data have different characteristics depending on the type of displacement of the socket 16c with respect to the bolt 24. Therefore, the learning unit 13a learns different features according to the type of deviation for the plurality of learning waveform data.
  • the determination unit 12c determines the type of deviation corresponding to the actual waveform data by determining the contact state indicated by the actual waveform data using the learning result. Accordingly, the determination unit 12c recognizes the shift of the socket 16c with respect to the bolt 24 using the learning result of the learning waveform data corresponding to the specified type of shift and the actual waveform data included in the written learning result. To do. As a result, the control unit 12b can estimate the deviation amount with higher accuracy.
  • the controller 12b controls the robot 14 and / or the nut runner 16 so that the contact state of the socket 16c with the bolt 24 does not exceed the threshold value, or the socket 16c or the nut runner 16 is moved by the linear motion mechanisms 27 and 29. By moving within the range (within the amount of contraction of the springs 27j and 29e), the socket 16c can be brought into contact with the bolt 24 without damaging the bolt 24.
  • the sensor 18 is a contact sensor attached to the robot 14 in the vicinity of the nut runner 16, it is possible to easily detect a change in the contact state, and to further reduce the cost and durability of the sensor 18. Improvements can be made.
  • the senor 18 may be attached to the robot 14 substantially coaxially with the central axis 32, or may be attached to the robot 14 in a state where the axis of the sensor 18 is different from the central axis 32.
  • the nut runner 16 is attached to the robot 14 via the sensor 18. In either case, a change in the contact state can be easily detected.
  • the bolt 24 is assembled or tightened using the socket 16c, the amount of deviation can be easily corrected in the assembly work and the tightening work of the object 28 and the bolt 24.

Landscapes

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

Abstract

ロボットシステム(10)及びロボット(14)の制御方法において、検出部(12a)は、学習時に、ソケット(16c)をボルト(24)の頭部(26)の設定位置に接触させ、設定位置に対して設定動作範囲で回動させたときの接触状態を、学習用波形データとして検出する。学習部(13a)は、検出された複数の学習用波形データを学習し、その学習結果を判断部(12c)に書き込む。判断部(12c)は、実作業時に、ソケット(16c)がボルト(24)の頭部(26)に接触したときの接触状態の変化を示す実波形データと、書き込まれた学習結果とに基づいて、ボルト(24)に対するソケット(16c)のずれを認識する。

Description

ロボットシステム及びロボットの制御方法
 本発明は、ロボットのエンドエフェクタをワークに接触させて作業を行う際に、エンドエフェクタのワークに対するずれ量を補正するロボットシステム及びロボットの制御方法に関する。
 従来より、ロボットのエンドエフェクタをワークに接触させて該ワークに対する作業を行う際、例えば、対象物とワークとの組立作業や締付作業において、ワークの公差、ワークの設置レイアウトのばらつき等の不定条件により、ワークに対して適切な作業を行えない場合がある。
 そこで、特許第4850956号公報、特許第6006256号公報、及び、特開2017-94438号公報には、ロボットと別個に設けたカメラを用いてエンドエフェクタ及びワークを撮像し、撮像した画像から基準位置や作業対象部位を画像認識することで、エンドエフェクタの目標位置を算出する非接触検知型の制御装置が開示されている。
 また、特開2015-155126号公報には、エンドエフェクタに複数又は多軸検出タイプの力覚センサを取り付けた状態で、エンドエフェクタを目標位置(中心位置)に収束させるような力覚値又はモーメント値を事前に設定し、その後の実作業において、ロボット又はエンドエフェクタに対して、事前に設定した力覚値又はモーメント値に追従させるフィードバック制御(力覚倣い制御)を行わせる接触検知型の制御装置が開示されている。
 しかしながら、特許第4850956号公報、特許第6006256号公報、及び、特開2017-94438号公報の技術では、上述のカメラ、エンドエフェクタ及びワークの周辺を照らす照明装置、並びに、カメラが撮像した画像を処理する画像認識ソフトウェア等が必要とされる。また、ワークに対するエンドエフェクタのずれ量、照明装置の輝度変化、外乱光の遮断等、カメラが撮像した画像を安定化させるための専用のシステム機器や、撮像した画像を処理する専用のコンピュータ(PC)等の付帯機器も必要となる。この結果、ロボットの制御システムを構築するためのコストがかかる。
 また、特開2015-155126号公報の技術では、事前に設定した力覚値又はモーメント値に追従するようにフィードバック制御を行うため、制御システムを廉価に構成することが可能である。しかしながら、エンドエフェクタのワークに対するずれ量に応じた力の変化を直接検出するため、ロボットの先端に力覚センサを設ける必要がある。この場合、実作業時における力覚センサの配置が制約を受ける。また、ワークのエンドエフェクタとの接触部分をC面に設定する必要がある等、ワークの表面をエンドエフェクタに対応させる必要がある。この結果、適用可能な作業が、ピンと穴との嵌め合い等の特定の作業に限られてしまう。さらに、エンドエフェクタとワークとの接触時のがたつきの影響を排除するために、実作業を行う毎に、専用の治具やロボットハンドを設ける必要があり、汎用性が低い。
 本発明は、このような課題を考慮してなされたものであり、低コストで汎用性の高いロボットシステム及びロボットの制御方法を提供することを目的とする。
 本発明は、ロボットのエンドエフェクタのワークに対する接触状態の変化をセンサが検知した際に、該センサが検知した前記接触状態の変化に基づき前記ワークに対する前記エンドエフェクタのずれ量を推定し、前記ロボット及び/又は前記エンドエフェクタを制御することで前記ずれ量を補正するロボットシステムに関する。
 この場合、前記ロボットシステムは、前記ロボット及び/又は前記エンドエフェクタを制御する制御部と、該制御部によって前記エンドエフェクタの前記ワークに対する接触状態を変化させたときの前記接触状態の時間変化を示すデータを検出する検出部と、前記データを学習する学習部と、該学習部での前記データの学習結果を用いて、前記エンドエフェクタの前記ワークに対する実作業時での該エンドエフェクタの前記ワークに対する接触状態を判断する判断部とを有する。
 そして、前記検出部は、前記ワークの表面における複数の設定位置の各々について、予め、前記エンドエフェクタを前記設定位置に接触させたときに前記センサが検知した接触状態の変化と、該設定位置に対して設定動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、学習用データとして検出する。また、前記学習部は、検出された複数の前記学習用データを学習し、複数の前記学習用データの学習結果を前記判断部に書き込む。さらに、前記判断部は、前記実作業時に、前記エンドエフェクタが前記ワークの表面に接触したときの前記センサが検出した接触状態の変化を取得し、取得した前記接触状態の変化と、書き込まれた前記学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識する。前記制御部は、前記判断部での判断結果に基づいて前記ずれ量を推定する。
 また、本発明は、ロボットのエンドエフェクタのワークに対する接触状態の変化をセンサが検知した際に、該センサが検知した前記接触状態の変化に基づき前記ワークに対する前記エンドエフェクタのずれ量を推定し、前記ロボット及び/又は前記エンドエフェクタを制御することで前記ずれ量を補正するロボットの制御方法に関する。この制御方法は、下記の第1~第5ステップを有する。
 すなわち、前記第1ステップでは、前記ワークの表面における設定位置について、前記エンドエフェクタを前記設定位置に接触させたときに前記センサが検知した接触状態の変化と、該設定位置に対して設定動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、学習用データとして検出部が検出する。
 前記第2ステップでは、検出された前記学習用データを学習部が学習する。
 前記第3ステップでは、前記第1ステップと前記第2ステップとの順に繰り返し実行した後に、前記学習部での複数の前記学習用データの学習結果を判断部に書き込む。
 前記第4ステップでは、前記エンドエフェクタの前記ワークに対する実作業時に、前記エンドエフェクタが前記ワークの表面に接触したときの前記センサが検出した接触状態の変化を前記判断部が取得し、取得した前記接触状態の変化と、書き込まれた前記学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識する。
 前記第5ステップでは、制御部が前記判断部での判断結果に基づいて前記ずれ量を推定する。
 このように、本発明によれば、前記エンドエフェクタの前記ワークに対するずれ量が多次元方向のずれ量であっても、単一の前記センサが検出した前記接触状態の変化に基づいて前記ワークに対する前記エンドエフェクタのずれを認識し、この認識結果(判断結果)に基づいて前記ずれ量を推定することができる。従って、本発明では、上記の各公報の技術と比較して、シンプルなシステム構成で前記ずれ量を推定可能であるため、低コストで高い実装性のシステムを構築することができる。
 また、前記データ(前記学習用データ)が1次元の時間変化のロギングデータであるため、上記の各公報の技術と比較して、取得した前記接触状態の変化のデータの取り扱いが容易である。この結果、専用のコンピュータ(PC)を用いることなく、一般的なFA機器において、前記接触状態(前記ずれ)を認識し、この認識結果(判断結果)を用いて前記ロボット及び/又は前記エンドエフェクタを制御することが可能となる。これにより、高いシステム稼働率を達成することができる。
 さらに、人手による手探りの作業と同様の手法で、前記ロボットが前記ワークの複数の設定位置に対して前記エンドエフェクタを手探り動作させることで、前記学習部が複数の前記データを学習し、さらに、その学習結果と、前記実作業の際に取得された接触状態の変化とに基づいて前記ずれを認識する。これにより、前記ずれ量を容易に推定することができる。この結果、特開2015-155126号公報の技術と比較して、ワークの公差やワークの設置レイアウトのばらつき、ワークのがたつき等の外乱に対するロバスト性が向上する。
 さらにまた、本発明では、上述の人工知能による学習機能を用いて、前記設定動作範囲での前記学習用データの獲得と、該学習用データの学習とを繰返し行うことで、自律的に接触状態の特徴を獲得し、前記ずれの認識や前記ずれ量の推定を行うことができる。これにより、該ずれ量を推定するための判断ロジックの開発や調整に必要な工数を少なくすることができる。この結果、システムの導入期間の短縮化を図ることができる。
 このように、本発明によれば、上記の各公報の技術と比較して、低コストで汎用性の高いロボットシステム及びロボットの制御方法を実現することができる。
 ここで、前記検出部は、前記実作業時に、前記エンドエフェクタを前記ワークの表面の任意の位置に接触させたときに前記センサが検知した接触状態の変化と、該任意の位置に対して任意の動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、実データとして検出する。これにより、前記判断部は、検出された前記実データと、書き込まれた前記学習結果に含まれる、該実データに類似している学習用データの学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識する。この結果、前記制御部で前記ずれ量を精度良く推定することが可能となる。従って、本発明では、前記ずれ量を推定するための認識・判断処理システムを容易に構築することができる。
 また、複数の前記学習用データは、前記エンドエフェクタの前記ワークに対するずれの種類に応じて異なる特徴を有する。そこで、前記学習部は、複数の前記学習用データについて、前記ずれの種類に応じた異なる特徴を学習する。前記判断部は、前記実作業時には、前記学習結果を用いて、前記実データの示す接触状態を判断することで、前記実データに対応するずれの種類を特定する。これにより、前記判断部は、書き込まれた前記学習結果に含まれる、特定した前記ずれの種類に応じた学習用データの学習結果と前記実データとを用いて、前記ワークに対する前記エンドエフェクタのずれを認識する。この結果、前記制御部において、前記ずれ量を一層精度良く推定することができる。
 さらに、前記エンドエフェクタの前記ワークに対する前記接触状態が閾値を超えないように、前記制御部が前記ロボット及び/若しくは前記エンドエフェクタを制御するか、又は、外力可動機構によって前記エンドエフェクタを可動範囲内で移動させることにより、前記ワークを傷付けることなく前記エンドエフェクタを前記ワークに接触させることができる。
 また、前記センサが前記ロボットにおける前記エンドエフェクタの近傍に取り付けられた接触覚センサであれば、前記接触状態の変化を容易に検出することができると共に、一層の低コスト化及び該センサの耐久性の向上を図ることができる。
 この場合、前記接触覚センサは、前記エンドエフェクタの中心軸と略同軸に前記ロボットに取り付けられているか、又は、該接触覚センサの軸が前記中心軸とは異なる状態で前記ロボットに取り付けられてもよい。前記接触覚センサの軸が前記中心軸と異なる場合、前記エンドエフェクタは、前記接触覚センサを介して前記ロボットに取り付けられていればよい。いずれの場合でも、前記接触状態の変化を容易に検出することができる。
 なお、前記ワークが対象物に組み立てられる部材、又は、該対象物に締め付けられる部材であり、前記エンドエフェクタが前記部材を前記対象物に組み立てる工具、又は、締め付ける工具であれば、前記対象物と前記部材との組立作業や締付作業において、前記ずれ量を容易に補正することができる。
本実施形態に係るロボットシステムの学習時の構成図である。 本実施形態に係るロボットシステムの実作業時の構成図である。 図1及び図2のソケットへの接触力と、該接触力によってナットランナがZ方向に直動する場合を図示したロボットの構成図である。 図1~図3のソケットをZ方向に直動させる直動機構が設けられている場合を図示した概略斜視図である。 図4の直動機構の内部構成図である。 図1~図3のナットランナをZ方向に直動させる直動機構が設けられている場合を図示した概略構成図である。 図6の直動機構の概略構成図である。 図8Aは、ナットランナのソケットとボルトとの接触前の状態を示す説明図であり、図8Bは、図8Aのソケットとボルトとが嵌合したときの接触状態を示す説明図である。 図9Aは、ボルトに対するソケットの平行ずれが発生しているときのソケットとボルトとの接触前の状態を示す説明図であり、図9Bは、図9Aのソケットとボルトとの接触状態を示す説明図である。 図10Aは、ボルトに対するソケットの傾斜ずれが発生しているときのソケットとボルトとの接触前の状態を示す説明図であり、図10Bは、図10Aのソケットとボルトとの接触状態を示す説明図である。 図11Aは、ボルトに対するソケットの位相ずれが発生しているときのソケットとボルトとの接触状態を示す説明図であり、図11Bは、ソケットとボルトとの接触位置を図示した説明図である。 図12Aは、ボルトに対するソケットの平行・傾斜ずれが発生しているときのソケットとボルトとの接触前の状態を示す説明図であり、図12Bは、図12Aのソケットとボルトとの接触状態を示す説明図である。 接触前の状態から接触状態に至るまでのソケットのボルトとの接触力の時間変化を示した図である。 図14A~図14Cは、ソケットのボルトに対する手探り動作の一例を図示した説明図である。 ボルトを組み付けるか又は締め付けるときにソケットに作用するトルクの変化を示した図である。 ボルトを組み付けるか又は締め付けるときにソケットに作用するモーメントの時間変化を示した図である。 図1のロボットシステムの学習時の動作を示すフローチャートである。 図1のロボットシステムの実作業時の動作を示すフローチャートである。 ボルトに対するソケットの接触状態を図示した説明図である。 学習時に学習部が取得した学習用波形データの図である。 実作業時のロボットシステムの動作の流れを概略的に図示した説明図である。 実作業時に学習部が取得した実波形データの図である。 ボルトに対するソケットのずれ量の補正動作を図示した説明図である。
 以下、本発明に係るロボットシステム及びロボットの制御方法について好適な実施形態を例示し、添付の図面を参照しながら説明する。
[1.本実施形態の構成]
 図1及び図2は、本実施形態に係るロボットシステム10の構成図である。
<1.1 ロボットシステム10の概要>
 ロボットシステム10は、制御装置12と、学習装置13と、制御装置12又は学習装置13によって制御されるロボット14と、ロボット14の先端部に装着されたロボットハンドやハンドツール等のエンドエフェクタとしてのナットランナ16と、ロボット14の先端部に取り付けられたセンサ18とを備える。
 制御装置12は、PLC(Programmable Logic Controller)で構成され、図示しないメモリに格納されたプログラムを読み出して実行することにより、検出部12a、制御部12b及び判断部12cの機能を実現する。また、学習装置13は、主にPCで構成され、図示しないメモリに格納されたプログラムを読み出して実行することにより、人工知能の学習機能を備えた学習部13aの機能を実現する。制御装置12と学習装置13とは、双方向でのデータ通信が可能である。この場合、図1の学習時には、学習装置13がロボット14を制御しつつ所定の深層学習を行い、その学習結果を制御装置12に供給する。一方、学習後の図2の実作業時には、制御装置12が学習結果を用いてロボット14及びナットランナ16を制御し、所定の作業を行わせる。
 すなわち、図1の学習時には、学習部13aがロボット14を制御し、検出部12aは、センサ18の検知結果から、後述する波形データ(学習用波形データ)を生成(検出)する。学習部13aは、検出部12aで検出された学習用波形データ(学習用データ)を学習し、その学習結果を判断部12cに書き込む。
 一方、図2の実作業時には、制御部12bがロボット14及びナットランナ16を制御し、検出部12aは、センサ18の検知結果から、後述する波形データ(実波形データ)を検出する。判断部12cは、学習結果を用いて、検出部12aで検出された実波形データ(実データ)に対して所定の認識処理(判断処理)を行う。制御部12bは、判断部12cでの認識結果(判断結果)に基づいて、ロボット14及びナットランナ16を制御することで、ロボット14及びナットランナ16に所定の作業を行わせる。
 従って、本実施形態に係るロボットシステム10は、学習時には、学習部13aが制御部12bの機能を奏することに留意する。なお、ロボットシステム10では、1台のPLCで制御装置12を実現してもよいし、又は、複数のPLCを用いて、検出部12a、制御部12b及び判断部12cの各処理をそれぞれ割り当てることで、並列処理を行ってもよい。要は、学習部13aを有する学習装置13と、検出部12a、制御部12b及び判断部12cを有する制御装置12とが、処理負荷の観点から、別個の装置であればよい。すなわち、学習作業では、非常に多くのメモリ容量や演算容量を必要とするので、主として、PCが学習装置13として機能する。一方、実作業では、学習結果のパラメータを用いて、所定の認識処理と制御処理とが行われるため、必要最小限のメモリ容量と演算容量とがあればよい。従って、一般的なFA機器であるPLCが制御装置12として機能する。
<1.2 ロボットシステム10の各部の構成>
 ここで、ロボットシステム10の各部の構成について、詳しく説明する。
 ロボット14は、例えば、6軸の多関節ロボットであればよい。すなわち、ロボット14は、基端部である取付台としての第1ベース14a、第2ベース14b、第1アーム14c、第1関節部14d、第2アーム14e、第2関節部14f、及び、先端部であるエンドエフェクタ着脱部14gを有し、この順に接続されている。エンドエフェクタ着脱部14gには、センサ18及びナットランナ16が取り付けられている。
 第2ベース14bは、鉛直軸(重力方向のZ軸)である第1軸j1を中心に旋回可能(回転可能)に第1ベース14aに軸支されている。第1アーム14cは、鉛直軸に直交する水平軸(X軸又はY軸)である第2軸j2を中心に俯仰可能(回転可能)に第2ベース14bに軸支されている。第1関節部14dは、第2軸j2と平行な第3軸j3を中心に俯仰可能(回転可能)に第1アーム14cの先端部に軸支されている。第2アーム14eは、第1関節部14dから第2アーム14eの先端部に向かう方向(長手方向)に沿った第4軸j4を中心に回転可能に第1関節部14dに軸支されている。第2関節部14fは、第3軸j3と平行な第5軸j5を中心に回転可能に第2アーム14eの先端部に軸支されている。エンドエフェクタ着脱部14gは、第2関節部14fから先端部に向かう方向に沿った第6軸j6を中心に回転可能に第2関節部14fに軸支されている。
 センサ18は、例えば、6軸成分(X軸、Y軸及びZ軸の3軸方向の力成分、X軸、Y軸及びZ軸の3軸方向のモーメント成分)を検出可能な接触覚センサである。センサ18は、第6軸j6と略同軸になるように、該センサ18の上面がエンドエフェクタ着脱部14gの先端部に取り付けられる。センサ18のエンドエフェクタ着脱部14gとは反対の底面には、ナットランナ支持部材20が取り付けられている。
 ナットランナ支持部材20は、第6軸j6と直交する方向に延びる板状部材である。ナットランナ支持部材20の一端部には、センサ18の底面が取り付けられ、ナットランナ支持部材20の他端部には、ナットランナ16が第6軸j6と略平行に取り付けられている。従って、ナットランナ16は、ナットランナ支持部材20及びセンサ18を介して、エンドエフェクタ着脱部14gに装着されている。なお、ナットランナ支持部材20の両側面には、ナットランナ16及びセンサ18から引き出される不図示の配線を保持するための側板22がナットランナ支持部材20の長手方向に沿って設けられている。
 ナットランナ16は、ナットランナ支持部材20に支持される柱状の駆動部16aと、駆動部16aから下方に延びるナットランナ16の軸16bの先端(下端)に取り付けられ、駆動部16aの駆動によって該軸16bを中心に回転可能なソケット16cとを有する。駆動部16aは、第6軸j6と略平行にナットランナ支持部材20を挿通した状態で支持されている。従って、ナットランナ16の軸16bは、第6軸j6と略平行に下方に延びている。ソケット16cは、ワークとしてのボルト24の頭部26に嵌合可能な凹部16dを有する。また、ボルト24は、不図示の作業台に配置された車体やモータ等の対象物28のネジ孔に螺合される。
 なお、本実施形態に係るロボットシステム10は、ワークがボルト24である場合に限定されることはなく、対象物28に組み立てられる部材、又は、該対象物28に締め付けられる部材でもよい。従って、ロボットシステム10において、エンドエフェクタは、ナットランナ16に限定されることはなく、上記の部材を対象物28に組み立てるか、又は、締め付ける工具(ハンドツール)であってもよい。つまり、ロボットシステム10では、締付作業だけでなく、ロボットハンドやハンドツール(エンドエフェクタ)による各種の組立作業、例えば、ダウエルピンの嵌合、カプラとコネクタとの嵌合、ボルトとタップ穴との軸合わせ、各種の軸部材と穴との嵌合、を行うことが可能である。また、ワークは、締付部材だけではなく、嵌合や組立に用いられる部品であってもよい。以下の説明では、一例として、ワークとしてのボルト24がフランジ30付きの六角ボルトであり、エンドエフェクタとしてのナットランナ16のソケット16cにおける六角形状の凹部16dが、六角ボルトの頭部26に嵌合する場合について説明する。
 制御装置12の制御部12bは、ロボット14に制御信号を供給することにより、ロボット14内部の不図示のモータを駆動させ、モータの軸(第1~第6軸j1~j6)を回転させることにより、該ロボット14を動作させる。これにより、例えば、ソケット16cの凹部16dを、ボルト24の頭部26に嵌合させることができる。また、制御部12bは、ナットランナ16に制御信号を供給することにより、ナットランナ16の駆動部16aを駆動させ、軸16bを中心にソケット16cを回転させる。これにより、ソケット16cの凹部16dがボルト24の頭部26に嵌合している場合、対象物28に対するボルト24の組立作業や締付作業を行うことができる。
 センサ18は、ナットランナ16のソケット16cがボルト24に接触したときに、ソケット16cのボルト24に対する接触状態の変化、具体的には、該ソケット16cがボルト24から受ける接触力(反力)の3軸成分、及び、接触力のモーメントの3軸成分を逐次検出し、これらの6軸成分の検出結果を制御装置12に順次出力する。なお、センサ18は、ボルト24に対するソケット16cの接触状態の変化を検出できればよいので、図1に示すように、ナットランナ16と同軸に配置されてなくてもよい。勿論、ナットランナ16と略同軸に配置されている場合は、接触力の変化を検知することが可能である。
 なお、センサ18は、第1~第6軸j1~j6の近傍に設けられ、モータのトルクを検出するトルクセンサであってもよい。この場合、複数のトルクセンサは、モータのトルクを検出し、その検出結果を制御装置12に出力する。制御装置12の検出部12aは、複数のトルクセンサの検出結果に基づいて、ボルト24に対するソケット16cの接触力の変化を推定すればよい。
 さらに、センサ18は、ソケット16cのボルト24に対する接触状態の変化を検出できればよいので、ソケット16cとボルト24との接触状態が変化するときに発生する音を検出するマイクロフォン等の音響センサや、ソケット16cとボルト24との接触状態が変化するときに発生する振動を検出する各種の振動センサでもよい。また、センサ18が音響センサのような非接触式のセンサである場合には、ロボット14に取り付けることなく、ソケット16c及びボルト24の近傍に配置されていればよい。いずれの場合でも、制御装置12の検出部12aは、センサ18の検知結果からソケット16cとボルト24との接触状態の時間変化を波形データとして検出することが可能である。
 以下の説明では、ロボット14に取り付けられた接触覚センサをセンサ18として用い、ソケット16cのボルト24に対する接触状態の変化をセンサ18で検知する場合について説明する。
 図1の学習時において、学習装置13の学習部13aは、ロボット14を制御することで、ソケット16cをボルト24の頭部26に接触させる手探り動作を実行させる。
 手探り動作とは、人手による手探りの作業と同様の手法で、ボルト24の頭部26に対してソケット16cの接触状態を変化させることで、ソケット16cの凹部16dとボルト24の頭部26とを嵌合させるための作業をいう。従って、手探り動作は、エンドエフェクタ(ナットランナ16)とワーク(ボルト24)との接触状態を変化させるものであれば、どのような動作であってもよい。例えば、後述するボルト24に対するソケット16cの回動、ボルト24に対してソケット16cをX方向及びY方向に並進させる平動、ボルト24の締付軸方向(Z方向)での捻り、又は、回動と平動とを組み合わせた枢動によって、手探り動作を行わせることが可能である。さらに、エンドエフェクタ(ナットランナ16)に不図示の振動付与機構を取り付け、エンドエフェクタとワークとを接触させた状態で、該振動付与機構からエンドエフェクタに各種の振動(例えば、超音波振動)を付与することにより、手探り動作を行わせることも可能である。
 制御装置12の検出部12aは、手探り動作の際に、センサ18から入力された6軸成分に基づいて、例えば、接触力F(図3及び図4参照)のZ軸成分(接触力Fz)の時間経過を学習用波形データとして検出し、検出した学習用波形データを学習部13aに供給する。学習部13aは、供給された学習用波形データの特徴を学習し、その学習結果を判断部12cに書き込む。学習部13aの機能や手探り動作の詳細については後述する。
 一方、図2の実作業時において、制御装置12の制御部12bは、ロボット14及びナットランナ16を制御することで、ソケット16cとボルト24の頭部26とを嵌合させ、ボルト24を対象物28に螺合させる。この場合、検出部12aは、センサ18から入力された6軸成分に基づいて、例えば、接触力Fzの時間経過を、実波形データとして検出し、検出した実波形データを判断部12cに供給する。
 判断部12cは、学習時に書き込まれた学習結果を用いて、供給された実波形データの示す接触状態を認識し、その認識結果から接触状態、すなわち、ボルト24の頭部26に対するソケット16cのずれの有無を認識(判断)する。判断部12cでの認識結果(判断結果)は、制御部12bに供給される。制御部12bは、供給された認識結果に基づいて、ボルト24の頭部26に対するソケット16cのずれ量を推定し、推定したずれ量を制御量としてロボット14及びナットランナ16を制御する。これにより、対象物28に対するボルト24の組立作業や締付作業を正確に行うことが可能となる。判断部12cの機能や実作業の詳細については、後述する。
 なお、上記の説明では、検出部12aが学習時に学習用波形データを検出し、実作業時に実波形データを検出する処理等について説明した。本実施形態では、上記のような波形データの処理に代えて、数式処理等によるデータ処理を適用することも可能である。
 この場合、例えば、検出部12aは、学習時に、センサ18から逐次入力される6軸成分に基づき、接触力Fzのデータを学習用データとして検出し、一方で、実作業時に、センサ18から逐次入力される6軸成分に基づき、接触力Fzのデータを実データとして検出すればよい。これにより、学習部13aは、深層学習により学習用データの特徴を学習し、その学習結果を判断部12cに書き込むことができる。また、判断部12cは、書き込まれた学習結果を用いて、数式処理等により、実データの示す接触状態を認識し、その認識結果からボルト24の頭部26に対するソケット16cのずれの有無を認識することができる。
 以下の説明では、学習時に検出部12aが学習用波形データを検出し、一方で、実作業時に検出部12aが実波形データを検出する場合について説明する。
 図1及び図2では、ナットランナ16周辺の構成を概略的に図示している。ここで、ナットランナ16周辺の具体的な構成について、図3~図7を参照しながら説明する。
 図3に示すように、ソケット16cがボルト24の頭部26(図1及び図2参照)に接触した場合、ソケット16cは、接触力F(Fz)の負荷を受けることになる。この場合、ソケット16cのボルト24に対する接触力Fが閾値を超えない程度に、ボルト24とソケット16cとを接触させつつ、ソケット16cの負荷を軽減させる必要がある。なお、閾値とは、ボルト24が損傷しない程度の接触力Fの上限値(ボルト24にかかる負荷の最大値)をいう。
 そこで、ボルト24との接触に伴うソケット16cの負荷を軽減するためには、(1)センサ18の検知結果に基づきロボット14を制御することでナットランナ16をZ方向(図1~図3の紙面の上方向)に移動させる、(2)ソケット16c又はナットランナ16を上方向に移動させる、ことが考えられる。図4~図7は、上記(2)の対応を具体化したものであり、外力可動機構としての直動機構27(図4及び図5参照)又は直動機構29(図6及び図7参照)をナットランナ16に設けたものである。
 図4及び図5の直動機構27は、ソケット16cのZ方向へのストローク量(移動量)が、接触力F(Fz)の値に対して線形的に変化するように構成されている。この場合、直動機構27は、ナットランナ16の駆動部16a及び軸16bと、ソケット16cとの間に設けられている。
 直動機構27は、Z方向に延びる段付きのロッド27aを備える。ロッド27aの一端部は、ナットランナ16の軸16bに嵌合している。ロッド27aの他端部は、Z方向に延びる筒状の連結部材27bに挿入されている。連結部材27bは、ロッド27aが挿入される連結部材27bの一端部には、フランジが設けられている。連結部材27bの他端部には、ソケット16cの基端部が嵌合されている。
 ロッド27aの径方向外側には、ロッド27aと連結部材27bの一端部側を収容するベアリングホルダ27cが配置されている。ベアリングホルダ27cは、Z方向に延びる段付きの筒状部材であり、駆動部16a側の一端部には、フランジ27dが形成されている。フランジ27dは、駆動部16aに固定された一方の板体27eと、ソケット16c側の他方の板体27fとで挟まれている。この場合、2つの板体27e、27fとフランジ27dとをネジ部材27gで一体に締結することにより、ベアリングホルダ27cが駆動部16aに固定される。
 ベアリングホルダ27cの内周面のフランジ27d側と、ロッド27aの外周面の一端部側との間には、2つのベアリング27hが設けられている。また、連結部材27bの一端部(フランジ)は、ベアリングホルダ27cの内周面に形成された突起27iに係合している。これにより、ソケット16c及び連結部材27bが、図5に示す位置よりもソケット16c側に突出することが阻止される。さらに、連結部材27bの一端部とロッド27aの一端部との間には、スプリング27jが介挿されている。スプリング27jは、ソケット16cに向かう方向(接触力Fzとは逆方向)への弾発力を有する。
 なお、駆動部16a又はベアリングホルダ27cをナットランナ支持部材20(図1~図3参照)に固定することにより、ナットランナ16及び直動機構27をナットランナ支持部材20に支持することができる。
 図4及び図5の直動機構27では、ソケット16cがボルト24の頭部26と接触して、ソケット16cが接触力Fzを受けた場合、該接触力Fzは、ソケット16c及び連結部材27bを介してスプリング27jに伝わる。この結果、スプリング27jは、接触力Fzによって、弾発力に抗して駆動部16a側に縮む。この場合、スプリング27jは、接触力Fzの値に対して、Z方向に線形的に変形する。これにより、ソケット16c及び連結部材27bのストローク量を、接触力Fzに対して線形に変化させることができる。従って、スプリング27jの縮み量がストローク量、すなわち、ソケット16cの可動範囲となる。
 一方、ソケット16cとボルト24の頭部26との接触状態が解除された場合、スプリング27jは、弾発力によって連結部材27bをソケット16c側に変位させる。この結果、ソケット16c及び連結部材27bは、図5の位置に復帰する。なお、駆動部16aが駆動して、軸16bが回転した場合、ロッド27a、連結部材27b及びソケット16cは、一体に回転する。
 図6及び図7に示す直動機構29は、ナットランナ16全体のZ方向へのストローク量が、接触力F(Fz)の値に対して線形的に変化するように構成されている。この場合、直動機構29は、ナットランナ16の駆動部16aに設けられている。
 直動機構29は、ナットランナ支持部材20と略平行に延び、駆動部16aの下端部に固定されるベース下板29aと、ナットランナ支持部材20と略平行に延び、駆動部16aの中央部に固定されるベース上板29bとを有する。ベース下板29aとベース上板29bとは、Z方向に延びる4本の直動ロッド29cによって連結されている。この場合、4本の直動ロッド29cは、ナットランナ支持部材20をZ方向に貫通して設けられた4つの筒状のホルダ29dを挿通することで、ベース下板29aとベース上板29bとを連結する。4本の直動ロッド29cにおいて、ベース下板29aとホルダ29dとの間には、スプリング29eがそれぞれ介挿されている。各スプリング29eは、ソケット16cに向かう方向(接触力Fzとは逆方向)への弾発力を有する。また、直動機構29において、ベース下板29aからは、ナットランナ支持部材20を貫通して上方に延びる複数本のロッド29fが設けられている。また、直動機構29は、ナットランナ支持部材20に固定され、先端部がベース下板29aに連結されたダンパ29gをさらに有する。
 従って、ナットランナ16及び直動機構29は、ベース上板29b及びホルダ29dを介して、ナットランナ支持部材20に支持されている。
 直動機構29では、ソケット16cがボルト24の頭部26(図1及び図2参照)と接触して、ソケット16cが接触力F(Fz)を受けた場合、該接触力Fzは、ソケット16c、軸16b、駆動部16a、ベース下板29aを介して、各スプリング29e及びダンパ29gに伝わる。この結果、各スプリング29eは、接触力Fzによって、弾発力に抗して上方に縮む。これにより、直動機構29を構成するベース下板29a、ベース上板29b、直動ロッド29c及びロッド29fと、ベース下板29a及びベース上板29bに固定されたナットランナ16とは、Z方向に沿って、一体に上方に変位する。
 この場合、スプリング29eは、接触力Fzの値に対して、Z方向に線形的に変形する。これにより、ベース下板29a、ベース上板29b、直動ロッド29c、ロッド29f及びナットランナ16のストローク量を、接触力Fzに対して線形に変化させることができる。従って、各スプリング29eの縮み量がストローク量、すなわち、ナットランナ16の可動範囲となる。また、ダンパ29gは、接触力Fzを受けることでナットランナ16及びベース下板29aに発生する振動や衝撃を吸収する。
 一方、ソケット16cとボルト24の頭部26との接触状態が解除された場合、スプリング29eは、弾発力によってベース下板29aを下方に変位させる。この結果、ベース下板29a、ベース上板29b、直動ロッド29c、ロッド29f及びナットランナ16は、図6及び図7の位置に復帰する。
 なお、以下の説明では、図1及び図2の概略図に従って、ロボットシステム10の構成及び動作について説明する。そのため、一部の説明では、直動機構27、29の構成及び動作を省略する場合があることに留意する。
[2.ソケット16cとボルト24とのずれに関する説明]
 本実施形態に係るロボットシステム10の動作説明に先立ち、ナットランナ16を用いてボルト24と対象物28との組立作業又は締付作業を行う際、ナットランナ16のソケット16cとボルト24との間で各種のずれが発生している場合の問題点等について、図8A~図16を参照しながら説明する。ここでは、必要に応じて、図1及び図2も参照しながら説明する。
 図8A及び図8Bは、ソケット16cとボルト24との間で各種のずれが発生していない場合の説明図である。一方、図9A~図12Bは、ソケット16cとボルト24との間で何らかのずれが発生している場合を図示した説明図である。
 図8Aの場合、ソケット16cの中心軸32(図1及び図2に示すナットランナ16の軸16b)とボルト24の中心軸34とが略同軸であり、後述する各種のずれが発生していない。そのため、Z軸に沿ってソケット16cを下降させると、図8Bに示すように、ソケット16cの凹部16dとボルト24の頭部26とが嵌合する。図8Bでは、ソケット16cとボルト24との接触箇所を太い実線で図示している。すなわち、図8Bでは、ソケット16cの凹部16dとボルト24の頭部26とが面接触すると共に、ソケット16cの先端とボルト24の頭部26のフランジ30とが線接触又は面接触している。
 一方、図9A及び図9Bは、ボルト24の中心軸34に対してソケット16cの中心軸32がY方向に相対的にずれている場合を図示している。以下、2つの中心軸32、34が相対的に平行にずれている場合を「平行ずれ」と呼称する。この場合、Z軸に沿ってソケット16cを下降させると、図9Bに示すように、ソケット16cの先端がボルト24の頭部26に当接し、ソケット16cの凹部16dとボルト24の頭部26とを嵌合させることができない。すなわち、ソケット16cの先端とボルト24の頭部26とが線接触又は面接触している。また、平行ずれにおいて、ソケット16cは、ボルト24の頭部26との接触箇所を中心に、矢印方向に回動する手探り動作が可能である。
 図10A及び図10Bは、ボルト24の中心軸34に対してソケット16cの中心軸32が角度θだけ傾斜している場合を図示している。以下、一方の中心軸に対して他方の中心軸が傾斜している場合を「傾斜ずれ」と呼称する。この場合、Z軸に沿ってソケット16cを下降させると、図10Bに示すように、ボルト24の頭部26の一部がソケット16cの凹部16dに挿入され、ソケット16cの先端がボルト24の頭部26のフランジ30に当接している。しかしながら、ソケット16cの凹部16dとボルト24の頭部26とを嵌合させることができない。すなわち、ソケット16cの先端とボルト24の頭部26のフランジ30とが点接触又は線接触している。また、傾斜ずれにおいて、ソケット16cは、ボルト24の頭部26のフランジ30との接触箇所(図10Bでは大きな点で示す箇所)を中心に、矢印方向に回動する手探り動作が可能である。
 図11A及び図11Bは、ソケット16cの中心軸32回りの位相と、ボルト24の中心軸34回りの位相とがずれている場合を図示している。以下、ソケット16cの位相とボルト24の位相とがずれている場合を「位相ずれ」と呼称する。この場合、Z軸に沿ってソケット16cを下降させると、ボルト24の頭部26の一部がソケット16cの凹部16dに挿入された状態となり、ソケット16cの凹部16dとボルト24の頭部26とを嵌合させることができない。すなわち、ソケット16cの凹部16dとボルト24の頭部26の6つの頂点とが点接触する状態となる。位相ずれにおいて、ソケット16cの凹部16dとボルト24の頭部26の各頂点とが点接触している場合、ボルト24に対してソケット16cを中心軸32、34回りに回転させることができない。なお、位相ずれにおいても、平行ずれが生じていれば、図9A及び図9Bと同様の状況となる。
 図12A及び図12Bは、ボルト24の中心軸34に対してソケット16cの中心軸32がY方向に相対的にずれていると共に、ボルト24の中心軸34に対してソケット16cの中心軸32が角度θだけ傾斜している場合を図示している。すなわち、図12A及び図12Bは、図9A及び図9Bの平行ずれと、図10A及び図10Bの傾斜ずれとの双方が発生している場合を図示したものである。以下、このようなずれを「平行・傾斜ずれ」と呼称する。この場合、Z軸に沿ってソケット16cを下降させると、図12Bに示すように、ソケット16cの先端がボルト24の頭部26に当接し、ソケット16cの凹部16dとボルト24の頭部26とを嵌合させることができない。すなわち、ソケット16cの先端とボルト24の頭部26とが点接触又は線接触している。また、平行・傾斜ずれにおいて、ソケット16cは、ボルト24の頭部26との接触箇所(図12Bでは大きな点で示す箇所)を中心に、矢印方向に回動する手探り動作が可能である。
 図13は、図8A~図12Bの場合において、ボルト24に対してソケット16cを下降させる場合に、ソケット16cの下降開始からの経過時間と、ソケット16cのボルト24に対する接触力(反力)との関係を示す図である。図13の接触力は、例えば、ソケット16cがボルト24から受ける反力のZ方向成分(接触力Fz)である。ここで、ソケット16cの下降開始の時点からソケット16cがボルト24の頭部26に当接(接触)するまでの経過時間(ストローク)を到達時間と呼称する。
 図13に示すように、いずれの場合でも、接触力Fzは、到達時間となるまでは略0レベルであり、一方で、到達時間後は、時間経過に伴って直線的に増加する。但し、到達時間後の接触力Fzの時間変化(傾き)は、ずれの種類によって異なる特徴を有する。
 具体的に、各種のずれが発生していない場合(図8A及び図8B参照)は、図13に実線で示すように、各種のずれが発生している場合(図9A~図12B参照)と比較して、到達時間が最も長い。すなわち、各種のずれが発生していない場合は、ボルト24の頭部26に到達するまでのソケット16cの移動距離が最も長いためである。従って、破線で示す平行ずれ(図9A及び図9B参照)、二点鎖線で示す傾斜ずれ(図10A及び図10B参照)、一点鎖線で示す位相ずれ(図11A及び図11B参照)、並びに、点線で示す平行・傾斜ずれ(図12A及び図12B参照)では、ずれが発生していない場合よりも到達時間が短い。
 そのため、図13について、到達時間及び接触力Fzの傾きを比較することにより、ずれの種類を特定し、各種のずれの特徴を把握することができる。例えば、ずれが発生していない場合(図13の実線)と、位相ずれの場合(図13の一点鎖線)とでは、到達時間の違いを比較することで、両者を区別することができる。また、平行ずれの場合(図13の破線)と、位相ずれの場合(図13の一点鎖線)とでは、接触力Fzの傾きを比較することで、両者を区別することができる。さらに、傾斜ずれの場合(図13の二点鎖線)は、到達時間及び接触力Fzの傾きの違いから、他の結果と区別することができる。平行・傾斜ずれの場合(図13の点線)は、接触力Fzの傾きが最も小さいという結果から、他の結果と区別することができる。
 以上の結果より、各種のずれの特徴を予め特定しておけば、実際のソケット16cによるボルト24の組立作業又は締付作業(実作業)において、センサ18が検出したボルト24に対するソケット16cの接触力Fzと、各種のずれの特徴との比較に基づき、発生しているずれの種類を特定し、実際に発生しているずれ量を補正して、ソケット16cとボルト24とを正常に嵌合させることが可能になる。また、ソケット16cとボルト24とが嵌合したか否かを判断することも可能となる。
 図14A~図14Cは、ロボット14によるソケット16cのボルト24に対する手探り動作を図示した説明図である。図14A~図14Cは、一例として、平行ずれ(図9A及び図9B参照)の場合を図示している。図14Aのソケット16cとボルト24との接触状態から、ロボット14を制御することで、図14Aの紙面上、大きな点で示す接触箇所を中心に、反時計方向にソケット16cが回動すると、図14B及び図14Cの状態となる。この場合、ボルト24の頭部26の上端と、ソケット16cの下端との間隔が、ソケット16cとボルト24との干渉代diとなる。
 ロボットシステム10は、直動機構27、29(図4~図7参照)を有するので、干渉代diの分だけスプリング27j、29eが縮んで、ソケット16c又はナットランナ16のZ方向へのストローク量に変換される。これにより、手探り動作によってソケット16cを回動させる場合、直動機構27、29が接触力Fzの値に応じてソケット16c又はナットランナ16をZ方向に直動させるので、ソケット16cの負荷を軽減することができる。
 また、接触力Fzは、スプリング27j、29e及びナットランナ支持部材20等を介して、ナットランナ支持部材20に取り付けられたセンサ18に伝達される。これにより、センサ18は、ソケット16cの中心軸32と同軸でなくても、接触力Fzを容易に検知することができる。なお、ロボットシステム10では、上記の平行ずれに限定されることはなく、他の種類のずれ(図10A~図12B参照)の場合でも、手探り動作を行った際に、ソケット16cの負荷が軽減されると共に、接触力Fzを検知することが可能である。
 図15は、ソケット16cを中心軸32回りに回転させて、ボルト24を対象物28に締め付ける場合の回転角度φとソケット16cに作用するトルクとの関係を示す図である。この場合、回転角度φは、時間に応じた角度である。実線は、中心軸32、34が略同軸である状態(図8B参照)で、ソケット16cを回転させたときの結果である。また、破線は、平行ずれ(図9B参照)や噛み込みが発生している状態で、ソケット16cを回転させたときの結果である。さらに、一点鎖線は、ソケット16cがボルト24に接触していない状態で、該ソケット16cを回転させたときの結果である。
 図15の実線の結果であれば、ソケット16cを用いてボルト24を正常に締め付けることが可能である。従って、実線の正常な結果と、実際の締付動作の結果とを比較することで、ずれの発生の有無や、組立作業又は締付作業の異常の発生の有無を検知することができる。
 図16は、ソケット16cを用いてボルト24を締め付ける場合に、ソケット16cに作用するモーメントの時間変化を示した図である。実線は、ソケット16cとボルト24とが嵌合している状態での結果であり、破線は、位相ずれ(図11A及び図11B参照)が発生している状態での結果である。図16の実線の結果であれば、ソケット16cを用いてボルト24を正常に締め付けることが可能である。従って、実線の正常な結果と、実際の締付動作での結果とを比較することで、ソケット16cとボルト24とが正常な接触状態であるか否かを認識することが可能である。
[3.本実施形態の動作]
 そこで、上記の知見を適用した本実施形態に係るロボットシステム10の動作(ロボット14の制御方法)について、図17~図23を参照しながら説明する。この動作説明では、必要に応じて、図1~図16も参照しながら説明する。ここでは、実作業で発生するずれ量を補正して、ボルト24を対象物28に適切に締め付けるための動作について説明する。なお、図17~図23の説明では、主として、傾斜ずれが発生している場合であって、センサ18がソケット16cのボルト24に対する反力(接触力)を検出する場合について説明する。また、ボルト24を対象物28に組み立てる場合でも、図17~図23と同様の動作であることに留意する。
 ロボットシステム10では、図17のフローに従って、各種のずれ等の学習を行う。先ず、図17のステップS1において、学習装置13の学習部13aは、学習条件のデータに応じた制御信号をロボット14に供給してモータを駆動させる。これにより、ロボット14が動作を開始し、エンドエフェクタ着脱部14gに装着したナットランナ16の下降を開始させることで、ソケット16cの位置制御を開始する。また、センサ18は、ソケット16cのボルト24に対する接触状態(例えば、接触力(反力))の検出を開始する。センサ18は、検出結果を制御装置12に逐次出力する。なお、図17では、後述する実作業で用いるソケット16c及びボルト24と同じ種類のソケット16c及びボルト24を使用する。
 この場合、ソケット16cがボルト24の頭部26に当接するまでは、略0レベルの検出結果がセンサ18から制御装置12に逐次出力される。また、制御装置12の検出部12aは、ナットランナ16の下降開始時刻からの計時を行い、センサ18からの検出結果(接触力)と下降開始時刻からの経過時間とを紐付け、不図示のメモリに記憶する。
 ソケット16cがボルト24に当接すると、ソケット16cは、ボルト24の頭部26を押圧するため、ボルト24から反力を受ける。ナットランナ16には、反力(接触力)の値に応じてソケット16c又はナットランナ16をZ方向に直動させる直動機構27、29が設けられている。そのため、ソケット16cがボルト24から接触力を受けた場合でも、該ソケット16cの負荷を軽減することができる。
 センサ18は、ナットランナ16又は直動機構27、29からナットランナ支持部材20を介して伝わる接触力を検出し、その検出結果を検出部12aに逐次出力する。検出部12aは、ソケット16cのボルト24の頭部26に対する接触力の大きさ(例えば、Z方向成分である接触力Fz)と経過時間との関係から、ソケット16cがボルト24に当接したことを認識することができる。すなわち、検出部12aは、経過時間と接触力Fzとから、接触力Fzの時間変化の結果を得ることができる。
 次のステップS2(第1ステップ)において、学習部13aは、ソケット16cとボルト24の頭部26とが当接している状態で、図19に示すように、例えば、Y-Z平面上で、ソケット16cとボルト24の頭部26との当接位置(大きな点で示す設定位置)を中心に、ソケット16cが時計方向及び反時計方向に回動する手探り動作を行うように、ロボット14を制御する。なお、図19において、dは、中心軸34と、ボルト24の頭部26に対するソケット16cの接触箇所との間隔である。ステップS2での手探り動作において、設定位置に対してソケット16cを回動させる方向の順序、及び、設定位置に対してソケット16cを回動させる範囲(設定動作範囲)は、適宜設定すればよい。また、制御部12bは、接触力が所定の閾値を超えないように、ロボット14を制御して、ソケット16cをボルト24の頭部26に接触させる。なお、閾値とは、ボルト24が損傷しない程度の接触力の上限値(ボルト24にかかる負荷の最大値)をいう。
 この場合も、センサ18は、ソケット16cのボルト24の頭部26に対する接触力を逐次検出し、その検出結果を制御装置12に出力する。検出部12aは、逐次入力されるセンサ18の検出結果を経過時間と紐付けてメモリに記憶する。この結果、検出部12aは、図20に示すような経過時間と接触力(Z方向成分の接触力Fz)との関係を示す波形データ(学習用波形データ)を収集(検出)することができる。そして、検出部12aは、検出した学習用波形データを学習部13aに供給する。なお、ソケット16cは、設定位置を中心に時計方向及び反時計方向に回動する手探り動作を行うので、学習用波形データの横軸である経過時間は、ボルト24の中心軸32に対する角度θに対応したものとなる。
 次のステップS3(第2ステップ)において、学習部13aは、深層学習によって、収集した学習用波形データを学習する。この場合、学習部13aは、周知のニューラルネットワークにより、学習用波形データの特徴、すなわち、ずれによる接触力Fzの時間変化の特徴(図20の波形の傾向)を学習する。なお、深層学習の手法は公知であるため、その詳細な説明は省略する。
 次のステップS4において、学習部13aは、学習用波形データに対する深層学習を繰り返し行うかどうかを判断する。実作業で想定される各種のずれに応じた波形の学習が完了していない場合、学習部13aは、さらなる学習が必要と判断する(ステップS4:YES)。そして、学習部13aは、ステップS1に戻り、さらなる学習を行うための手探り動作を行う。
 図13、図15及び図16に示すように、ずれの種類によって、接触力Fzの時間変化(傾き)、トルクの変化及びモーメントの時間変化は、それぞれ異なる。そのため、ステップS1~S4の処理を繰り返し行うことにより、学習部13aは、同じずれに対する波形の特徴や、異なるずれの種類に対する波形の特徴を確実に学習することができる。つまり、学習部13aは、ずれの種類毎に、ステップS1~S4の処理を繰り返し行うことで、各種のずれに応じた特徴を学習することができる。
 なお、図20は、ステップS1~S4の処理を繰り返し行ったときの複数の学習用波形データを重ね合わせたものである。また、本実施形態では、ボルト24の頭部26の表面における設定位置を変更して、ステップS1~S4の処理を行うことにより、複数の設定位置毎に学習用波形データを取得し、学習部13aでずれの特徴を学習することができる。さらに、本実施形態では、ステップS1~S4の処理を繰り返し行うことで、検出部12aは、図13、図15及び図16の結果を学習用波形データとして検出し、学習部13aは、これらの学習用波形データを学習することも可能である。
 一方、実作業で想定される各種のずれに応じた波形の学習が十分に行われたと判断した場合(ステップS4:NO)、学習部13aは、次のステップS5に進む。ステップS5において、学習部13aは、学習用波形データを用いた深層学習を終了すると共に、ソケット16cとボルト24との接触動作の終了をロボット14に指示する。これにより、ロボット14は、ナットランナ16を上方に退避させ、ボルト24の頭部26からソケット16cを離間させる。
 このようにして学習用波形データを収集し、波形の特徴を予め学習した後のステップS6(第3ステップ)において、学習部13aは、複数の学習用波形データの学習結果を判断部12cに書き込む。その後、ロボットシステム10では、図18のフローチャートに示す実作業が行われる。図21は、実作業のプロセスの概要を図示した説明図であり、図18の各ステップに概ね対応している。
 図18のステップS11において、制御部12bは、ロボット14を制御して、ナットランナ16を下降させ、ソケット16cをボルト24の頭部26に当接させることで、ソケット16cを用いたボルト24の締付動作を開始させる。これにより、次のステップS12において、ナットランナ16の駆動部16aが駆動して、軸16b及びソケット16cが中心軸32回りに回転し、対象物28に対するボルト24の締付けが行われる。
 次のステップS13において、検出部12aは、図15に示すソケット16cに作用するトルクの波形データ(実波形データ)を収集(検出)する。なお、検出部12aは、センサ18が検出したモーメント成分を用いて、トルクを算出することができる。検出された実波形データは、判断部12cに供給される。
 次のステップS14において、判断部12cは、供給された実波形データと、事前に書き込まれた学習結果のうち、トルクに関する学習用波形データの学習結果とに基づいて、実波形データが何らかのずれのある異常波形であるか否かを判断する。この場合、実波形データが、例えば、図15の破線で示す波形データであれば、判断部12cは、異常波形と判断し(ステップS14:YES)、ステップS15に進む。
 次のステップS15において、判断部12cは、異常波形であったため、ボルト24に対してソケット16cのずれを補正し、正常な締付状態に修正するためのリトライモードを起動する。
 リトライモードにおいて、ステップS16では、制御部12bは、判断部12cでの判断結果に基づき、ロボット14を制御して、ボルト24に対するソケット16cの手探り動作を実行させる。この場合、図17のステップS2と同様の手探り動作を行えばよい。
 これにより、ステップS17において、センサ18がソケット16cのボルト24に対する接触状態を検知し、その検知結果を検出部12aに逐次出力する。この結果、検出部12aは、図22に示す接触力Fzと時間との関係を示す実波形データを検出することができる。そして、検出部12aは、検出した実波形データを判断部12cに供給する。
 ステップS18(第4ステップ)において、判断部12cに実波形データが供給されると、次のステップS19において、判断部12cは、供給された実波形データと、事前に書き込まれた学習結果のうち、接触力に関する学習用波形データ(図20参照)の学習結果とに基づいて、実波形データの示すソケット16cとボルト24との接触状態、すなわち、ソケット16cのボルト24に対するずれを認識すると共に、ずれの種類を特定する。判断部12cでの当該ずれに対する認識結果(判断結果)は、制御部12bに供給される。
 次のステップS20(第5ステップ)において、制御部12bは、ステップS19の認識結果(判断結果)に基づいて、ボルト24に対するソケット16cのずれ量を算出(推定)する。次のステップS21において、制御部12bは、推定したずれ量を制御量としてロボット14を制御することで、図21及び図23に示すように、ソケット16cの中心軸32とボルト24の中心軸34とが略同軸となるように、ずれ量を補正する。
 次のステップS22において、判断部12cは、ステップS21によるソケット16cの位置を補正した結果、ソケット16cとボルト24とが嵌合したか否かを判断する。この場合、例えば、図13に示すような実波形データを検出部12aで検出し、判断部12cにおいて、検出された波形データと、図13に応じた学習用波形データの学習結果とに基づいて、ソケット16cとボルト24との嵌合の有無を判断すればよい。
 ソケット16cとボルト24とが嵌合していないと判断される場合(ステップS22:NO)、ステップS16に戻り、リトライモードが引き続き実行される。一方、ソケット16cとボルト24とが嵌合していると判断される場合(ステップS22:YES)、ステップS23に進み、判断部12cは、リトライモードを完了させると共に、ステップS22での判断結果を制御部12bに通知する。制御部12bは、ナットランナ16を制御することで、軸16b及びソケット16cを回転させ、ボルト24の締付作業を実行する。
 そして、対象物28とボルト24とが螺合して、該ボルト24の締付けが完了した場合(ステップS24:YES)、ステップS25において、制御部12bは、ナットランナ16の駆動を停止させると共に、ロボット14を制御してナットランナ16を上方に退避させ、ボルト24の頭部26からソケット16cを離間させる。これにより、ボルト24に対する一連の締付動作が完了する。なお、ステップS24でのボルト24の締付けの完了の判断は、例えば、センサ18で検出される接触力が所定値に到達した場合に締付け完了と判断するか、又は、締付作業の開始から所定時間経過したときに締付け完了と判断すればよい。
 なお、ステップS24でボルト24の締付けが完了していないと判断した場合(ステップS24:NO)、ステップS12に戻り、ステップS12以降の処理が再度実行される。また、ステップS14で実波形データが異常波形でなかった場合(ステップS14:NO)、判断部12cは、ソケット16cとボルト24とが嵌合していると判断し、ステップS15~S23の処理をスキップし、ステップS24の処理を実行する。
 このように、上記の動作では、ステップS14でずれの発生を示す異常な実波形データである場合のみステップS15~S22のリトライモードが起動して、ずれの補正を行うので、サイクルタイムの影響を最小限に抑えながら、ボルト24の締付けの成功率を高めることができる。
 上記の動作説明では、主として、傾斜ずれ(図10A及び図10B参照)の場合について説明した。一方、平行ずれ(図9A及び図9B参照)の場合は、ステップS21において、ロボット14を制御し、2つの中心軸32、34が略同軸となるように、ソケット16cをX方向又はY方向に沿って平行移動させればよい。また、位相ずれ(図11A及び図11B参照)の場合は、ステップS21において、ナットランナ16を制御し、ソケット16cの凹部16dと、ボルト24の頭部26とが同相となるように、ソケット16cを中心軸32回りに回転させればよい。さらに、平行・傾斜ずれ(図12A及び図12B参照)の場合は、ステップS21において、傾斜ずれ及び平行ずれでのずれ量の補正方法を適用することで、2つの中心軸32、34を略同軸に補正すればよい。
[4.本実施形態の効果]
 以上説明したように、本実施形態に係るロボットシステム10及びロボット14の制御方法によれば、ナットランナ16の軸16bに取り付けられたソケット16cのボルト24に対するずれ量が、多次元方向のずれ量であっても、単一のセンサ18が検出したソケット16cとボルト24との接触状態の変化に基づいて、ボルト24に対するソケット16cのずれを認識し、この認識結果(判断結果)に基づいて、ずれ量を推定することができる。従って、本実施形態では、上記の各公報の技術と比較して、シンプルなシステム構成でずれ量を推定可能である。この結果、低コストで高い実装性のシステムを構築することができる。
 また、学習用波形データが1次元の時間変化のロギングデータであるため、上記の各公報の技術と比較して、取得した接触状態の変化のデータの取り扱いが容易である。この結果、専用のコンピュータ(PC)を用いることなく、一般的なFA機器において、接触状態(ずれ)を認識し、この認識結果(判断結果)を用いてロボット14及び/又はナットランナ16を制御することが可能となる。これにより、高いシステム稼働率を達成することができる。
 さらに、人手による手探りの作業と同様の手法で、ロボット14がボルト24の複数の設定位置に対してソケット16cを手探り動作させることで、学習部13aが複数の学習用波形データを学習し、さらに、判断部12cにおいて、その学習結果と、実作業の際に取得された接触状態の変化(実波形データ)とに基づいて、ずれを認識する。これにより、制御部12bにおいて、ずれ量を容易に推定することができる。この結果、特開2015-155126号公報の技術と比較して、ボルト24の公差やボルト24の設置レイアウトのばらつき、ボルト24のがたつき等の外乱に対するロバスト性が向上する。
 さらにまた、本実施形態では、人工知能による学習機能を用いて、設定動作範囲での学習用波形データの獲得と、該学習用波形データの学習とを繰返し行うことで、自律的に接触状態の特徴を獲得し、ずれの認識やずれ量の推定を行うことができる。これにより、該ずれ量を推定するための判断ロジックの開発や調整に必要な工数を少なくすることができる。この結果、ロボットシステム10の導入期間の短縮化を図ることができる。
 このように、本実施形態では、上記の各公報の技術と比較して、低コストで汎用性の高いロボットシステム10及びロボット14の制御方法を実現することができる。
 ここで、検出部12aは、実作業時に、ソケット16cをボルト24の表面の任意の位置に接触させたときにセンサ18が検知した接触状態の変化と、該任意の位置に対して任意の動作範囲でソケット16cを手探り動作させたときにセンサ18が検知した接触状態の変化とを、実波形データとして検出する。これにより、判断部12cは、検出された実波形データと、書き込まれた学習結果に含まれる、該実波形データに類似している学習用波形データの学習結果とに基づいて、ボルト24に対するソケット16cのずれを認識する。この結果、制御部12bでずれ量を精度良く推定することが可能となる。従って、本実施形態では、ずれ量を推定するための認識・判断処理システムを容易に構築することができる。
 また、複数の学習用波形データは、ソケット16cのボルト24に対するずれの種類に応じて異なる特徴を有する。そこで、学習部13aは、複数の学習用波形データについて、ずれの種類に応じた異なる特徴を学習する。判断部12cは、実作業時には、学習結果を用いて、実波形データの示す接触状態を判断することで、実波形データに対応するずれの種類を特定する。これにより、判断部12cは、書き込まれた学習結果に含まれる、特定したずれの種類に応じた学習用波形データの学習結果と実波形データとを用いて、ボルト24に対するソケット16cのずれを認識する。この結果、制御部12bにおいて、ずれ量を一層精度良く推定することができる。
 さらに、ソケット16cのボルト24に対する接触状態が閾値を超えないように、制御部12bがロボット14及び/若しくはナットランナ16を制御するか、又は、直動機構27、29によってソケット16c若しくはナットランナ16を可動範囲内(スプリング27j、29eの縮み量の範囲内)で移動させることにより、ボルト24を傷付けることなくソケット16cをボルト24に接触させることができる。
 また、センサ18がロボット14におけるナットランナ16の近傍に取り付けられた接触覚センサであるため、接触状態の変化を容易に検出することができると共に、一層の低コスト化及び該センサ18の耐久性の向上を図ることができる。
 この場合、センサ18は、中心軸32と略同軸にロボット14に取り付けられているか、又は、該センサ18の軸が中心軸32とは異なる状態でロボット14に取り付けられてもよい。センサ18の軸が中心軸32と異なる場合、ナットランナ16は、センサ18を介してロボット14に取り付けられる。いずれの場合でも、接触状態の変化を容易に検出することができる。
 さらに、本実施形態では、ソケット16cを用いてボルト24を組み立てるか、又は、締め付けるので、対象物28とボルト24との組立作業や締付作業において、ずれ量を容易に補正することができる。
 なお、本発明は、上述の実施形態に限らず、この明細書の記載内容に基づき、種々の構成を採り得ることは勿論である。

Claims (8)

  1.  ロボットのエンドエフェクタのワークに対する接触状態の変化をセンサが検知した際に、該センサが検知した前記接触状態の変化に基づき前記ワークに対する前記エンドエフェクタのずれ量を推定し、前記ロボット及び/又は前記エンドエフェクタを制御することで前記ずれ量を補正するロボットシステムにおいて、
     前記ロボット及び/又は前記エンドエフェクタを制御する制御部と、該制御部によって前記エンドエフェクタの前記ワークに対する接触状態を変化させたときの前記接触状態の時間変化を示すデータを検出する検出部と、前記データを学習する学習部と、該学習部での前記データの学習結果を用いて、前記エンドエフェクタの前記ワークに対する実作業時での該エンドエフェクタの前記ワークに対する接触状態を判断する判断部とを有し、
     前記検出部は、前記ワークの表面における複数の設定位置の各々について、予め、前記エンドエフェクタを前記設定位置に接触させたときに前記センサが検知した接触状態の変化と、該設定位置に対して設定動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、学習用データとして検出し、
     前記学習部は、検出された複数の前記学習用データを学習し、複数の前記学習用データの学習結果を前記判断部に書き込み、
     前記判断部は、前記実作業時に、前記エンドエフェクタが前記ワークの表面に接触したときの前記センサが検出した接触状態の変化を取得し、取得した前記接触状態の変化と、書き込まれた前記学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識し、
     前記制御部は、前記判断部での判断結果に基づいて前記ずれ量を推定することを特徴とするロボットシステム。
  2.  請求項1記載のロボットシステムにおいて、
     前記検出部は、前記実作業時に、前記エンドエフェクタを前記ワークの表面の任意の位置に接触させたときに前記センサが検知した接触状態の変化と、該任意の位置に対して任意の動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、実データとして検出し、
     前記判断部は、検出された前記実データと、書き込まれた前記学習結果に含まれる、該実データに類似している学習用データの学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識することを特徴とするロボットシステム。
  3.  請求項2記載のロボットシステムにおいて、
     複数の前記学習用データは、前記エンドエフェクタの前記ワークに対するずれの種類に応じて異なる特徴を有し、
     前記学習部は、複数の前記学習用データについて、前記ずれの種類に応じた異なる特徴を学習し、
     前記判断部は、前記実作業時には、前記学習結果を用いて、前記実データの示す接触状態を判断することで、前記実データに対応するずれの種類を特定し、書き込まれた前記学習結果に含まれる、特定した前記ずれの種類に応じた学習用データの学習結果と前記実データとを用いて、前記ワークに対する前記エンドエフェクタのずれを認識することを特徴とするロボットシステム。
  4.  請求項1~3のいずれか1項に記載のロボットシステムにおいて、
     前記エンドエフェクタの前記ワークに対する接触状態が閾値を超えないように、前記制御部が前記ロボット及び/若しくは前記エンドエフェクタを制御するか、又は、外力可動機構によって前記エンドエフェクタを可動範囲内で移動させることにより、前記エンドエフェクタを前記ワークに接触させることを特徴とするロボットシステム。
  5.  請求項1~4のいずれか1項に記載のロボットシステムにおいて、
     前記センサは、前記ロボットにおける前記エンドエフェクタの近傍に取り付けられた接触覚センサであることを特徴とするロボットシステム。
  6.  請求項5記載のロボットシステムにおいて、
     前記接触覚センサは、前記エンドエフェクタの中心軸と略同軸に前記ロボットに取り付けられているか、又は、該接触覚センサの軸が前記中心軸とは異なる状態で前記ロボットに取り付けられ、
     前記接触覚センサの軸が前記中心軸と異なる場合、前記エンドエフェクタは、前記接触覚センサを介して前記ロボットに取り付けられていることを特徴とするロボットシステム。
  7.  請求項1~6のいずれか1項に記載のロボットシステムにおいて、
     前記ワークは、対象物に組み立てられる部材、又は、該対象物に締め付けられる部材であり、
     前記エンドエフェクタは、前記部材を前記対象物に組み立てる工具、又は、締め付ける工具であることを特徴とするロボットシステム。
  8.  ロボットのエンドエフェクタのワークに対する接触状態の変化をセンサが検知した際に、該センサが検知した前記接触状態の変化に基づき前記ワークに対する前記エンドエフェクタのずれ量を推定し、前記ロボット及び/又は前記エンドエフェクタを制御することで前記ずれ量を補正するロボットの制御方法において、
     前記ワークの表面における設定位置について、前記エンドエフェクタを前記設定位置に接触させたときに前記センサが検知した接触状態の変化と、該設定位置に対して設定動作範囲で前記エンドエフェクタを手探り動作させたときに前記センサが検知した接触状態の変化とを、学習用データとして検出部が検出する第1ステップと、
     検出された前記学習用データを学習部が学習する第2ステップと、
     前記第1ステップと前記第2ステップとの順に繰り返し実行した後に、前記学習部での複数の前記学習用データの学習結果を判断部に書き込む第3ステップと、
     前記エンドエフェクタの前記ワークに対する実作業時に、前記エンドエフェクタが前記ワークの表面に接触したときの前記センサが検出した接触状態の変化を前記判断部が取得し、取得した前記接触状態の変化と、書き込まれた前記学習結果とに基づいて、前記ワークに対する前記エンドエフェクタのずれを認識する第4ステップと、
     制御部が前記判断部での判断結果に基づいて前記ずれ量を推定する第5ステップと、
     を有することを特徴とするロボットの制御方法。
PCT/JP2018/043604 2018-02-01 2018-11-27 ロボットシステム及びロボットの制御方法 WO2019150726A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US16/965,649 US11826902B2 (en) 2018-02-01 2018-11-27 Robot system and method for controlling robot
JP2019568886A JP6870122B2 (ja) 2018-02-01 2018-11-27 ロボットシステム及びロボットの制御方法
CN201880088368.4A CN111670094B (zh) 2018-02-01 2018-11-27 机器人系统和机器人的控制方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-016084 2018-02-01
JP2018016084 2018-02-01

Publications (1)

Publication Number Publication Date
WO2019150726A1 true WO2019150726A1 (ja) 2019-08-08

Family

ID=67478104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/043604 WO2019150726A1 (ja) 2018-02-01 2018-11-27 ロボットシステム及びロボットの制御方法

Country Status (4)

Country Link
US (1) US11826902B2 (ja)
JP (1) JP6870122B2 (ja)
CN (1) CN111670094B (ja)
WO (1) WO2019150726A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11383334B2 (en) 2020-03-31 2022-07-12 Honda Motor Co., Ltd. Tightening device
EP4019207A4 (en) * 2019-08-22 2023-02-15 OMRON Corporation PATTERN GENERATION DEVICE, PATTERN GENERATION METHOD, CONTROL DEVICE AND CONTROL METHOD
WO2024004797A1 (ja) * 2022-06-30 2024-01-04 川崎重工業株式会社 ロボット、ロボットシステムおよびロボットの作業方法
WO2024154228A1 (ja) * 2023-01-17 2024-07-25 ファナック株式会社 ロボット制御装置、ロボットシステムおよびロボット制御プログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3085876B1 (fr) * 2018-09-13 2020-12-04 Saint Gobain Placo Procede de serrage d'une vis de fixation d'un panneau de construction sur un support
JP7156962B2 (ja) * 2019-02-06 2022-10-19 株式会社日立ビルシステム 作業機ユニット及び多関節ロボット
KR20210146612A (ko) * 2020-05-27 2021-12-06 현대자동차주식회사 체결부품 공급장치
EP4029644B1 (en) * 2021-01-19 2023-07-19 Volvo Truck Corporation A robot for tightening a series of bolt nuts on a vehicle chassis and manufacturing process
CN113334417B (zh) * 2021-06-16 2022-06-21 成都博恩思医学机器人有限公司 一种机械手快拆装置
CN114211521B (zh) * 2021-12-23 2024-07-23 上海交大智邦科技有限公司 一种机器人抓手系统及其提高其控制精度稳定性的方法
CN114536373B (zh) * 2022-03-28 2024-02-09 无锡市正隆祥机械制造有限公司 一种缓冲型控制臂
KR102527789B1 (ko) * 2022-10-20 2023-05-04 주식회사 오토콘시스템 자동화 시스템을 이용한 콘크리트 파일 몰드의 조립 해체 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06206127A (ja) * 1993-01-08 1994-07-26 Toyota Motor Corp ナットランナ制御装置
JPH09258814A (ja) * 1996-03-22 1997-10-03 Kayaba Ind Co Ltd 組み立てロボットの位置決め制御装置及び位置決め制御方法
JP2013158850A (ja) * 2012-02-01 2013-08-19 Seiko Epson Corp ロボット装置、組立て方法、及び組立てプログラム
JP2015168050A (ja) * 2014-03-11 2015-09-28 セイコーエプソン株式会社 ロボット制御装置、ロボットおよびロボット制御方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4850956B2 (ja) 2010-02-19 2012-01-11 ファナック株式会社 学習制御機能を備えたロボット
JP5824354B2 (ja) 2011-12-23 2015-11-25 日東精工株式会社 自動ねじ締め装置
US8897919B2 (en) * 2012-06-13 2014-11-25 Fanuc Corporation Robot controller which conducts a force control by using a three-axial force sensor
EP2749974A2 (en) * 2012-12-28 2014-07-02 Kabushiki Kaisha Yaskawa Denki Robot teaching system, robot teaching assistant device, and robot teaching method
JP6351293B2 (ja) 2014-02-20 2018-07-04 キヤノン株式会社 ロボットシステム、および物品の製造方法
US9186794B2 (en) 2014-03-04 2015-11-17 Fanuc Corporation Robot controller having function to simplify teaching operation and improve motion performance of robot
US9403273B2 (en) * 2014-05-23 2016-08-02 GM Global Technology Operations LLC Rapid robotic imitation learning of force-torque tasks
JP5890488B1 (ja) 2014-08-05 2016-03-22 ファナック株式会社 ツールをワークに押付けて作業を行うロボットの制御装置
JP6148316B2 (ja) * 2015-07-31 2017-06-14 ファナック株式会社 故障条件を学習する機械学習方法及び機械学習装置、並びに該機械学習装置を備えた故障予知装置及び故障予知システム
JP2017030088A (ja) 2015-07-31 2017-02-09 ファナック株式会社 機械学習装置、ネジ締付システムおよびその制御装置
JP6333795B2 (ja) 2015-11-24 2018-05-30 ファナック株式会社 学習による教示作業の簡易化及び動作性能向上機能を備えたロボットシステム
JP6542713B2 (ja) * 2016-06-09 2019-07-10 ファナック株式会社 異常負荷検出の閾値を学習する機械学習器,数値制御装置および機械学習方法
DE102017106455B3 (de) * 2017-03-27 2018-09-20 Abb Schweiz Ag Endeffektor zur Werkstückbearbeitung und Robotersystem mit einem Endeffektor
JP6542839B2 (ja) * 2017-06-07 2019-07-10 ファナック株式会社 制御装置及び機械学習装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06206127A (ja) * 1993-01-08 1994-07-26 Toyota Motor Corp ナットランナ制御装置
JPH09258814A (ja) * 1996-03-22 1997-10-03 Kayaba Ind Co Ltd 組み立てロボットの位置決め制御装置及び位置決め制御方法
JP2013158850A (ja) * 2012-02-01 2013-08-19 Seiko Epson Corp ロボット装置、組立て方法、及び組立てプログラム
JP2015168050A (ja) * 2014-03-11 2015-09-28 セイコーエプソン株式会社 ロボット制御装置、ロボットおよびロボット制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MOTOYAMA, RYO: "Robot task of pin insertion using time history of force signal-Predicting state transitions using recurrent neural network", PROCEEDINGS OF THE 29TH ANNUAL CONFERENCE OF THE ROBOTICS SOCIETY OF JAPAN DVD -ROM, 7 September 2011 (2011-09-07) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4019207A4 (en) * 2019-08-22 2023-02-15 OMRON Corporation PATTERN GENERATION DEVICE, PATTERN GENERATION METHOD, CONTROL DEVICE AND CONTROL METHOD
US12097616B2 (en) 2019-08-22 2024-09-24 Omron Corporation Model generation apparatus, model generation method, control apparatus, and control method
US11383334B2 (en) 2020-03-31 2022-07-12 Honda Motor Co., Ltd. Tightening device
WO2024004797A1 (ja) * 2022-06-30 2024-01-04 川崎重工業株式会社 ロボット、ロボットシステムおよびロボットの作業方法
WO2024154228A1 (ja) * 2023-01-17 2024-07-25 ファナック株式会社 ロボット制御装置、ロボットシステムおよびロボット制御プログラム

Also Published As

Publication number Publication date
JP6870122B2 (ja) 2021-05-12
CN111670094B (zh) 2022-12-06
US11826902B2 (en) 2023-11-28
CN111670094A (zh) 2020-09-15
JPWO2019150726A1 (ja) 2020-11-26
US20210039264A1 (en) 2021-02-11

Similar Documents

Publication Publication Date Title
WO2019150726A1 (ja) ロボットシステム及びロボットの制御方法
JP4202365B2 (ja) 力制御装置
JP5565550B2 (ja) 自動ねじ締め装置とその制御方法
US20190275678A1 (en) Robot control device, robot, robot system, and robot control method
US20060145494A1 (en) Gripping type hand
JP7204354B2 (ja) ロボットシステム、ロボットシステムの制御方法、ロボットシステムを用いた物品の製造方法、プログラム及び記録媒体
JP6153316B2 (ja) ロボットシステム及びロボットシステムの制御方法
US10195744B2 (en) Control device, robot, and robot system
CN101323111A (zh) 嵌合装置
US20140288712A1 (en) Robot device
US10120364B2 (en) Self-corrective nut running for robotic applications
TW201440920A (zh) 用於工具單元之補償器件及利用該工具單元之配裝方法
JP7392161B2 (ja) ロボットシステム及びロボット制御装置
US11833687B2 (en) Robot apparatus, control method for the robot apparatus, assembly method using the robot apparatus, and recording medium
US20220402138A1 (en) Apparatus and method for piston insertion
JP5426465B2 (ja) 加工システム及び加工方法
KR20200052640A (ko) 검사용 로봇 그리퍼 및 그 제어 방법
US20230158678A1 (en) Robot system, control method and non-transitory storage medium storing control program thereon
JPH06143171A (ja) ロボット
JP2017127932A (ja) ロボット装置、ロボット制御方法、部品の製造方法、プログラム及び記録媒体
JP5157815B2 (ja) ロボット装置及びロボット装置教示方法
JP2019055455A (ja) ロボットハンド、ロボットハンドの制御方法
JP2019155523A (ja) ロボット制御装置、ロボット制御方法、ロボット制御装置を用いた物品の組立方法、プログラム及び記録媒体
JP2020175492A (ja) 加工装置及び加工方法
JP2024002786A (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: 18903446

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019568886

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18903446

Country of ref document: EP

Kind code of ref document: A1