WO2022019070A1 - 係合方法、ロボットシステム、制御装置及びコンピュータプログラム - Google Patents

係合方法、ロボットシステム、制御装置及びコンピュータプログラム Download PDF

Info

Publication number
WO2022019070A1
WO2022019070A1 PCT/JP2021/024738 JP2021024738W WO2022019070A1 WO 2022019070 A1 WO2022019070 A1 WO 2022019070A1 JP 2021024738 W JP2021024738 W JP 2021024738W WO 2022019070 A1 WO2022019070 A1 WO 2022019070A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot arm
operation mode
galling
control device
compensation operation
Prior art date
Application number
PCT/JP2021/024738
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 JP2022538663A priority Critical patent/JPWO2022019070A1/ja
Publication of WO2022019070A1 publication Critical patent/WO2022019070A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices

Definitions

  • the present invention relates to an engagement method, a robot system, a control device and a computer program.
  • a robot arm has been used to hold an object such as a part and engage it with the object. For example, attempts have been made to hold a fitted object using a robot arm and fit it to a target object.
  • a fitting object having a diameter of 10 mm to 50 mm into the target object with a clearance of several ⁇ m to several tens of ⁇ m positioning accuracy of several ⁇ m or less is required. It is not easy to realize such high-precision positioning by a robot arm.
  • Patent Document 1 describes fitting that can change the posture of the fitted object when a blockage occurs between the fitted object and the fitted object.
  • the method is described. Specifically, the force and the moment at the center of the bottom surface of the cylindrical fitting object are detected, and it is determined whether or not the fitting object and the fitted object are clogged, and the clogging occurs. If it is determined that, the outer peripheral surface of the fitting object is pressed against the inner peripheral surface of the fitting object by returning upward by a value smaller than the distance in which the fitting hole is inserted, so that the circumference of the center of the bottom surface of the fitting object is reached.
  • a fitting method is described in which the force is controlled based on the moment of the above and the posture of the fitted object is corrected.
  • the present invention relates to an engagement method, a robot system, a control device, and an engagement method capable of suppressing the possibility of breakage when an object such as a fitting object is engaged with an object such as a fitting object.
  • the purpose is to provide computer programs.
  • This disclosure provides an engagement method.
  • This engagement method includes a step of holding an object using a robot arm, a step of moving the object using the robot arm so as to engage with the object, and a galling between the object and the object. Includes a step of switching to a compensation operation mode in which the robot arm compensates for its own weight based on the occurrence.
  • Kajiri refers to the adhesion that occurs locally.
  • the galling occurs when two members come into contact with each other and a protrusion (true contact point) formed on one surface adheres to the other side due to contact with the other. Between materials that are prone to adhesion, galling may occur even at room temperature. The galling may occur due to variations in the shape accuracy of the object or the object, differences in surface roughness or surface shape, one-sided contact caused by these, other poor lubrication, contamination with foreign matter, and the like. Kajiri is sometimes called biting, catching, etc.
  • “Occurrence of galling” includes not only the actual occurrence of galling but also the state immediately before the occurrence of galling. For example, it includes a state in which galling does not actually occur, but the contact pressure between the two members exceeds the threshold value, and if it is left as it is, galling will occur.
  • the "compensation operation mode” is an operation mode in which the robot arm operates so as to compensate for its own weight.
  • Self-weight compensation is realized, for example, by acquiring torque acting on one or more joints due to the self-weight of the robot arm, and generating torque in the reverse direction for canceling or compensating for this torque by using an actuator. It is possible.
  • a mechanism for compensating for its own weight may be used.
  • the compensation operation mode is typically an operation mode in which the robot arm compensates for its own weight and the robot arm is displaced so as to follow the disturbance without restoring force.
  • Disturbance refers to an external action that disturbs the state of the control system. Disturbances are generally external actions whose timing and magnitude of action is difficult to predict. For example, an external force acting on an object from the object due to a disorder in the shape of the surface of the object, a load fluctuation that is difficult to predict, and a voltage fluctuation to the actuator are examples of the disturbance.
  • “Following a disturbance” means that the robot arm is displaced according to the disturbance, not controlled so as to offset or compensate for the influence of the disturbance.
  • “Following a disturbance without a restoring force” means that when the disturbance is removed, the robot arm is displaced according to the disturbance without applying a restoring force for the robot arm to return to its original position. Therefore, the robot arm maintains its position when the disturbance is no longer applied. It should be noted that the position is understood to include the posture when it is reasonable for a person skilled in the art to understand it as such.
  • Such a "compensation operation mode" can also be used when a human moves a robot arm to perform direct teaching to teach an operation.
  • the external force acting on the robot arm from the human corresponds to the disturbance.
  • the robot arm is displaced according to an external force applied by a human. Also, when the disturbance is no longer acting, that is, when the human releases, the robot arm maintains its position.
  • this engagement method includes a step of teaching the operation of the robot arm by displacing the robot arm so as to follow the disturbance without a restoring force in the compensation operation mode in which the robot arm compensates for its own weight. After performing the step of teaching, the step of holding the object may be performed.
  • this engagement method may include a step of switching from the compensation operation mode to the normal control mode in which the robot arm is not displaced so as to follow the disturbance.
  • the robot arm In the normal control mode, the robot arm is controlled to take a position and a posture according to a control signal.
  • this engagement method provides a path for moving the object using the robot arm so as to engage the object based on the position of the robot arm after performing the step of switching to the compensation operation mode. It may include a step to acquire.
  • it may include a step of switching to the compensation operation mode and a step of outputting an alarm after executing the step of switching to the normal control mode a predetermined number of times.
  • the robot arm may be provided with a flexible drive mechanism.
  • the flexible drive mechanism may include at least one of, for example, a ferrofluid, a mechanical spring, an air spring, a magnetic spring, and a vane motor to impart flexibility.
  • the "flexible drive mechanism” may be a series elastic actuator.
  • the series elastic actuator (Series Elastic Actuator) includes, for example, a motor and an elastic body such as a spring. The torque output from the motor is transmitted to the rigid link via the elastic body. Therefore, it becomes possible to easily realize that the object by the robot arm is brought into contact with the object and imitated. It is possible to imitate an object with respect to an object so that the elastic body of the series elastic actuator is elastically deformed.
  • making the object imitate the object means moving the object relative to the object while bringing the object into contact with the object.
  • the relative movement is not limited to the translational movement, but includes the rotational movement of the object relative to the target object.
  • the present disclosure is a robot arm and a control device for controlling the robot arm, in which a step of holding an object by using the robot arm and a step of moving the object by using the robot arm so as to engage with the object.
  • a robot system including a step of causing the robot arm to switch to a compensation operation mode in which the robot arm compensates for its own weight based on the occurrence of galling between the object and the object, and a control device for executing the step.
  • the present disclosure is a control device for controlling a robot arm, which includes a step of holding an object by using the robot arm, a step of moving the object by using the robot arm so as to engage with the object, and a step of moving the object.
  • a control device configured to enable the robot arm to switch to a compensation operation mode in which the robot arm compensates for its own weight based on the occurrence of galling between the object and the object.
  • the present disclosure comprises a step of holding an object by using a robot arm in a computer, a step of moving the object by using a robot arm so as to engage with the object, and the object and the object.
  • a computer program that generates a control command for executing a step of switching to a compensation operation mode in which the robot arm compensates for its own weight based on the occurrence of galling.
  • Robot system 100 Schematic diagram showing from the side view how an object, which is an insert component W, is fitted to an object, which is a mold M, by a robot arm 20. Schematic diagram showing a top view of fitting an object, which is an insert component W, to an object, which is a mold M, by a robot arm 20.
  • FIG. 1 shows a functional block diagram of the robot system 100.
  • 2A and 2B are schematic views showing a state in which an object, which is an insert component W, is fitted to an object, which is a mold M, by a robot arm 20 in a side view and a top view.
  • the robot system 100 includes a robot arm 20 and a control device 10 for controlling the robot arm 20.
  • the robot system 100 holds the insert component W which is a fitting object (an example of an “object”), and the fitting object is a gold which is an object to be fitted (an example of an “object”).
  • the fitting operation of assembling to the assembling portion of the mold M is executed.
  • the present invention can be generally applied to operations that may cause galling when an object is to be engaged with an object.
  • the robot arm 20 performs a series of operations including an operation of holding an object and engaging the object with the object.
  • the robot arm 20 is, for example, a vertical articulated robot, and has one or a plurality of bases, a plurality of links 20L, a joint 20J connecting each link 20L, an end effector 20E, and one or a plurality of drive units 20A.
  • the series elastic actuator 20D is provided.
  • the robot arm 20 is not limited to the vertical articulated robot, and may be, for example, a horizontal articulated robot device or a parallel link type robot device.
  • the link 20L is composed of a rigid member, for example, a link 20L corresponding to a body rotatably attached to a base and a lower arm rotatably attached to the body.
  • the end effector 20E has a function of holding an object.
  • the end effector 20E is attached to the tip of a link 20L corresponding to a wrist portion, and is configured to be able to hold an object by sandwiching it with movable plates 20E1 and 20E2 that are opened and closed by an actuator, for example.
  • the end effector 20E is not limited to this, and for example, a negative pressure is generated in the suction pad based on a plurality of suction pads for holding the surface of the object and a control signal transmitted from the control device 10. It may be a holding mechanism including an actuator that causes the object to be held, or a holding mechanism that holds an object by an electromagnetic force.
  • the robot arm 20 includes a series elastic actuator 20D provided at at least one joint 20J connecting the links 20L to each other.
  • the series elastic actuator 20D (an example of a "flexible drive mechanism") is for detecting, for example, a drive unit 20DA, an elastic body 20DE connected to the drive unit 20DA, and galling. It is composed of the sensor 20DS of.
  • the drive unit 20DA is composed of, for example, a servomotor.
  • the elastic body 20DE is composed of, for example, a mechanical spring.
  • the power output from the drive unit 20DA in the series elastic actuator 20D is transmitted to the link 20L on the output side via the elastic body 20DE and is rotated.
  • the sensor 20DS acquires information for detecting galling. For example, when detecting galling based on torque, the sensor 20DS is composed of a displacement sensor for acquiring the displacement amount of the mechanical spring as information indicating the torque when the object comes into contact with the object by the robot arm 20. To.
  • the parameters are the inertia, mass and length of the part driven by the series elastic actuator 20D corresponding to the flexible drive mechanism, the external force, and the spring constant of the mechanical spring which is the elastic body 20DE.
  • the equation of motion is established. Therefore, the control device 10 is configured to be able to execute mechanical compliance control for controlling impedance based on the spring constant and the amount of displacement of the mechanical spring.
  • the series elastic actuator 20D may be connected to the drive shaft of the servomotor, which is the drive unit 20DA, and may include a gear that transmits power to the mechanical spring. Further, the series elastic actuator 20D may include a damper mechanism for cushioning an impact based on viscosity and a clutch mechanism for switching power transmission.
  • a viscous body such as a damper mechanism having viscosity
  • a viscosity constant is added as a parameter to the equation of motion. For example, an equation of motion is established in which the value obtained by multiplying the viscosity constant by the time change of the link angle is taken as the torque.
  • the link 20L other than the link 20L driven by the series elastic actuator 20D is driven by, for example, a drive unit 20A composed of a servomotor.
  • the drive unit 20A rotates the link 20L on the output side around the drive shaft.
  • the drive unit 20A may be built in the link 20L.
  • the control device 10 is a start position of a reference position of the robot arm 20 (for example, a center point of the end effector 20E corresponding to a hand position; hereinafter referred to as a “reference position”) and at that time.
  • the start position acquisition unit 10A for acquiring the posture of
  • the target position acquisition unit 10B for acquiring the target position and the posture at that time
  • the galling detection unit 10C for detecting galling
  • the start position acquisition unit 10A Each drive unit of the robot arm 20 in each of the route acquisition unit 10D that acquires the path connecting one or a plurality of target positions acquired by the target position acquisition unit 10B and the normal control mode and the compensation operation mode described later.
  • It includes a control command acquisition unit 10E for acquiring a control command for controlling a servo motor corresponding to 20A and a servo motor of the series elastic actuator 20D, and an operation mode setting unit 10F for switching between a normal control mode and a compensation operation mode. ..
  • the start position acquisition unit 10A acquires, for example, the start position input from the teaching device 50 connected to the control device 10 and the posture at that time.
  • the teaching device 50 may be a teaching device 50 that follows online teaching in which the robot arm 20 is actually moved in the field and the reference position and posture at that time are taught as the start position, or the position and posture of the reference position are set as the start position by a computer program.
  • the teaching device 50 that follows offline teaching such as a text type, a simulator type, an emulator type, or an automatic teaching type may be used for teaching.
  • the start position acquisition unit 10A can switch from the normal control mode to the compensation operation mode and acquire the reference position and posture after the displacement when the robot arm is displaced following the disturbance as the start position. Possible to be configured.
  • the target position acquisition unit 10B acquires the target position input from the teaching device 50 and the posture at that time, as in the case of the start position, for example.
  • the target position acquisition unit 10B can acquire a plurality of target positions and postures at that time.
  • the galling detection unit 10C determines the presence or absence of galling based on the information acquired from the sensor 20DS. For example, the galling detection unit 10C acquires information indicating the displacement amount of the elastic body 20DE of the series elastic actuator 20D from the sensor 20DS, and when the rotational torque acquired based on the information exceeds a predetermined threshold value, galling Is configured to detect.
  • the method for detecting galling is not limited to this.
  • a force sensor is installed in the end effector 20E, and the galling detection unit 10C acquires information indicating the magnitude of the contact pressure that the object receives from the object from the force sensor, and the contact acquired based on this. It may be configured to detect galling when the pressure exceeds a predetermined threshold. Further, the galling detection unit may be configured to detect galling based on the position information of the robot arm 20, for example, based on the difference between the command value and the actual value.
  • the route acquisition unit 10D acquires a route (planned locus) connecting the start position and the target position (when a plurality of target positions are acquired, between the start position, the target position, and the target position) by arithmetic processing or the like.
  • the control command acquisition unit 10E acquires control commands for driving each drive unit 20A of the robot arm 20 (including the drive unit 20DA of the series elastic actuator 20D) by arithmetic processing or the like.
  • the control command acquisition unit 10E calculates a control command for controlling the servomotor of each drive unit 20A of the robot arm 20 in order to move the reference position according to the route acquired by the route acquisition unit 10D. Obtained by processing, etc.
  • the control command acquisition unit 10E can calculate the rotation angle of each servomotor for positioning the reference position on the path by inverse kinematics calculation (inverse kinematics), and can generate a control command based on this. Is.
  • the generated control command can be stored in the non-volatile storage element of the control device 10.
  • the control command acquisition unit 10E performs control to compensate for the influence of disturbance such as an external force.
  • the effect of disturbance is estimated based on the difference between the actual position (for example, the angle of the actual predetermined link 20L) and the command value (angle of the predetermined link 20L) in the control command, and the position correction amount is calculated based on this.
  • the control command acquisition unit 10E issues a control command for compensating for the weight of the robot arm 20 (including the weight of the object when it is held) by arithmetic processing or the like. get.
  • control command acquisition unit 10E acquires the torque acting on each joint 20J by the own weight of the robot arm 20 by arithmetic processing or the like, and generates a torque in the reverse direction for canceling this torque in each joint 20J.
  • a control command to the drive unit 20A and the drive unit 20DA to be driven is acquired by arithmetic processing or the like.
  • the control command acquisition unit 10E does not perform control to compensate for the influence of disturbance such as an external force, but controls the robot arm 20 to follow the disturbance. Specifically, as described above, a torque for compensating for the weight of the robot arm 20 is generated in the drive unit 20A and the drive unit 20DA, and even if a disturbance occurs, a torque for compensating for the influence of the disturbance is generated. Does not generate a control command to make it. Further, when the position and posture of the robot arm 20 are changed as a result of the robot arm 20 following the disturbance, the control command acquisition unit 10E again compensates for its own weight based on the position and posture of the robot arm 20 at that time. A control command to the drive unit 20A and the drive unit 20DA for generating such torque in each joint 20J is acquired by arithmetic processing or the like.
  • the operation mode setting unit 10F sets a normal control mode or a compensation operation mode as an operation mode by the control device 10 of the robot arm 20.
  • the operation mode setting unit 10F performs a compensation operation from the normal control mode based on the occurrence of galling. Switch the operation mode to the mode. Further, after the robot arm 20 follows the disturbance, the operation mode setting unit 10F switches the operation mode from the compensation operation mode to the normal control mode.
  • the control device 10 includes, for example, an arithmetic element that is a processor such as a CPU (Central Processing Unit) and a GPU (Graphical Processing Unit), a SRAM (Static Random Access Memory), a DRAM (Dynamic Random Access Memory), and the like. It is possible to configure a computer equipped with a volatile storage element of the above, a non-volatile storage element such as a NOR flash memory, a NAND flash memory, and an HDD (Hard Disc Drive), and a communication means such as a bus connecting these.
  • the non-volatile storage element stores, for example, a computer program (including data such as information indicating an allowable range) for executing each process shown in the present embodiment.
  • the volatile storage element temporarily stores at least a part of these computer programs, arithmetic processing results, and the like.
  • at least a part of these arithmetic elements, non-volatile storage elements and the like may be installed in a remote place connected to a communication network such as the Internet.
  • the arithmetic element may be configured to acquire a computer program or necessary data via a communication network.
  • the control device 10 and the robot arm 20 are configured to be capable of transmitting and receiving information by wireless or wired communication means.
  • a teaching device 50 for teaching operation to the robot system 100 may be connected to the control device 10.
  • the teaching device 50 includes, for example, a portable teaching pendant for performing online teaching such as direct teaching.
  • the teaching device 50 includes an arithmetic element, a volatile memory element, and a non-volatile memory element, and further includes a display means having a display and an input means having a plurality of operation keys and levers.
  • the input means may be composed of a touch panel type input means for inputting by pressing the display.
  • FIG. 3 is a flowchart showing a process for teaching the operation to the robot system 100.
  • the operator selects a teaching operation mode using, for example, the teaching device 50 (step S31).
  • the operation mode setting unit 10F of the control device 10 sets the operation mode to the compensation operation mode (step S32).
  • the robot system 100 starts the compensation operation mode for compensating for its own weight (step S33).
  • the control command acquisition unit 10E of the control device 10 acquires a control command for compensating for the weight of the robot arm 20 by arithmetic processing or the like, and the control device 10 drives the control command acquired by the control command acquisition unit 10E. It is transmitted to the unit 20A and the drive unit 20DA.
  • the drive unit 20A and the drive unit 20DA compensate for the weight of the robot arm 20 based on the received control command. In the absence of disturbance, the robot arm 20 maintains its position and posture.
  • the teaching device 50 teaches the reference position of the robot arm 20 at that time as a starting position (step S34). For example, the operator may teach the position where the end effector 20E starts holding the object as the start position.
  • the control device 10 controls the robot arm 20 to follow a disturbance, that is, an external force applied by the operator. Specifically, the control device 10 issues a control command to the drive unit 20A and the drive unit 20DA to generate a torque in each joint 20J that compensates only for the weight of the robot arm 20 that continuously fluctuates due to an external force. By repeatedly acquiring the robot arm 20 in a short cycle and transmitting it to the robot arm 20, control is performed to compensate for the weight of the robot arm 20 regardless of the fluctuating position and posture.
  • the control device 10 acquires the position and orientation of the end effector 20E when present at the start position, the angle of each link 20L, and the like, and stores the end effector 20E in the non-volatile storage element in association with the start position (step S35). Further, the operator teaches an operation for holding the object to the end effector 20E (step S36), and the control device 10 stores the operation for holding the object in the non-volatile storage element (step S37). ).
  • the operator manually moves the robot arm 20 a plurality of times and causes the control device 10 to acquire the position of the end effector 20E or the like at that time, thereby teaching the robot system 100 a plurality of target positions (step S38). ).
  • the control device 10 acquires the position and posture of the end effector 20E and the angle of each link 20L when they are present at each target position, and stores them in the storage element in association with each target position (step S39).
  • the control device 10 acquires a route connecting a start position and a plurality of target positions by an operation according to a route generation algorithm (S40). After that, the control device 10 may store the acquired path in the non-volatile storage element. Further, the control command acquisition unit 10E of the control device 10 acquires a control command for controlling each drive unit of the robot arm 20 and the drive unit of the series elastic actuator 20D by calculation based on the acquired target position and path. It may be stored in a non-volatile storage element.
  • the insert component W (an example of an “object”) is provided with a mold M (an example of an “assembly site” or an “object”) having a cylindrical recess formed therein.
  • the method of fitting into the above will be described.
  • FIG. 4 is a flowchart showing an operation method of the robot system 100.
  • FIG. 5 is a flowchart showing an engagement method when an object is fitted to an object in the operation method.
  • FIG. 6 is a schematic view showing how the insert component is fitted to the mold using the robot arm 20.
  • the robot arm 20 is rotatably attached to the lower arm portion and the link 20L corresponding to the lower arm portion rotatably attached to the body portion.
  • a joint 20J for connecting each link 20L is provided.
  • a series elastic actuator 20D for driving the link 20L corresponding to the lower arm portion is mounted on the joint 20J between the link 20L corresponding to the upper arm portion and the link 20L corresponding to the lower arm portion.
  • the insert component W is formed in a disk shape, for example.
  • the cylindrical recess formed in the mold M is formed, for example, slightly larger than the diameter of the insert component W (for example, 50 ⁇ m larger).
  • the engagement method disclosed in the present disclosure makes it possible to increase the possibility of engaging an object with an object even if galling (including a state close to galling) occurs.
  • the start position acquisition unit 10A and the target position acquisition unit 10B of the control device 10 acquire information indicating the start position and information indicating the target position, respectively (step S41).
  • the control device 10 may acquire this information by reading it from the non-volatile storage element.
  • the control device 10 may acquire this information from the teaching device 50.
  • the operation mode setting unit 10F sets the operation mode to the normal control mode.
  • the route acquisition unit 10D of the control device 10 reads the route generation algorithm from the non-volatile storage element, acquires the route connecting the start position and the plurality of target positions by calculation based on the route generation algorithm (step S42), and acquires the control command.
  • 10E acquires a control command for controlling each drive unit of the robot arm 20 and the drive unit of the series elastic actuator 20D by calculation based on the acquired target position, path, and the like (step S43).
  • control device 10 controls to reflect the start position information and the like. These information may be acquired by reading the instruction.
  • the robot arm 20 drives each link 20L based on the control command received from the control device 10.
  • the end effector 20E of the robot arm 20 holds the object (step S44).
  • the robot arm 20 moves the object and brings it closer to the object (step S45). Then, the robot arm 20 brings the end portion of the object into contact with the surface of the object (step S46, FIG. 6A). The robot arm 20 causes the object to imitate the object by moving the object relative to the object while maintaining the state where the end of the object is in contact with the surface of the object. (Step S47, FIG. 6B). At this time, the elastic body 20DE of the series elastic actuator 20D is elastically deformed according to the displacement amount.
  • the control device 10 determines that the reference position of the robot arm 20 has reached the vicinity of the target position set near the recess of the target object, the control device 10 operates the robot arm 20 toward the next target position.
  • the robot arm 20 uses the object as a fulcrum with the side surface of the object in contact with the corner of the recess as a fulcrum, with the end of the object slightly inserted into the recess.
  • the object is made to imitate the object while suppressing the possibility that the object protrudes out of the recess (step S48, FIG. 6C).
  • a fitting method (an example of the "engagement method") for fitting the object to the object is executed.
  • the control device 10 moves from the reference position in the state where the object is horizontal and not fitted to the target toward the target position in the state where the object is fitted to the target portion.
  • the operation of the robot arm 20 is started (step S51). Specifically, the control device 10 moves the robot arm 20 according to a straight path from the current position to the next target position.
  • the galling detection unit 10C determines the presence or absence of galling based on the information acquired from the sensor 20DS (step S52). If no galling is detected (NO), the object is fitted to the object and the operation is completed (step S62).
  • control device 10 determines whether the restart count has reached a predetermined threshold value (step S53).
  • the control device adds 1 to the restart count (step S54).
  • the initial value of the restart count is zero. Therefore, when galling is detected for the first time, the restart count becomes 1.
  • the control device 10 stops the operation of the robot arm 20 (step S55).
  • the operation mode setting unit 10F of the control device 10 switches the operation mode of the robot arm 20 from the normal control mode to the compensation operation mode (step S56).
  • the control command acquisition unit 10E of the control device 10 acquires a control command for compensating for the weight of the robot arm 20 by arithmetic processing or the like, and the control device 10 drives the control command acquired by the control command acquisition unit 10E. It is transmitted to the unit 20A and the drive unit 20DA.
  • the drive unit 20A and the drive unit 20DA compensate for the weight of the robot arm 20 based on the received control command. Therefore, the robot arm 20 is in a standby state.
  • the standby state is, for example, 1 ms or less (step S57).
  • the robot arm 20 maintains the position and posture immediately before switching to the compensation operation mode.
  • galling occurs when an object and an object come into contact with each other, and a protrusion (true contact point) formed on one surface comes into contact with the other and adheres to the other side (or a state close to it). Therefore, it corresponds to a disturbance that is an external action that disturbs the state of the control system. It should be noted that the same state occurs when galling occurs on the flexible robot arm. Therefore, the robot arm 20 and the object held by the robot arm 20 are displaced according to the disturbance received from the object.
  • the displacement of the position or posture of the robot arm 20 and the object held by the robot arm 20 is also minute, for example, 10 ⁇ m or less. ..
  • the robot arm 20 and the object held by the robot arm 20 and the object held by the robot arm 20 are displaced so as to follow the protrusions and the like that have caused galling, the robot arm 20 is designed to follow the surface of the protrusions and the like that have caused galling.
  • the position or posture of the object held by it is displaced. At this time, it is preferable not to apply the restoring force for returning the robot arm to the original position when the disturbance is removed. With this configuration, the robot arm can be suitably displaced in accordance with the disturbance.
  • the operation mode setting unit 10F of the control device 10 switches the operation mode of the robot arm 20 from the compensation operation mode to the normal control mode (step S58).
  • the route acquisition unit 10D acquires a route with the current position, that is, the current reference position of the robot arm 20, as the new start position, and the state in which the object is fitted to the target unit as the target position (step). S59).
  • the control device 10 attempts to move the robot arm 20 according to a straight path from the current position to the target position (step S60).
  • the galling detection unit 10C determines the presence or absence of galling based on the information acquired from the sensor 20DS (step S52). If no galling is detected (NO), the object is fitted to the object and the operation is completed (step S62).
  • the control device 10 determines whether the restart count has reached a predetermined threshold value (step S53). At this time, when the restart count is executed a predetermined number of times and the predetermined threshold value is reached (YES), the control device causes an output means (not shown) to output an alarm (step S61).
  • the robot arm when galling is detected, the robot arm is switched from the operation mode to the compensation operation mode so as to follow the disturbance causing the galling. 20 and the object held by it can be slightly displaced. Therefore, by switching to the normal control mode and starting the re-operation after the displacement, there is a high possibility that the galling can be eliminated and the engagement can be completed. Therefore, when engaging an object such as a fitting object with an object such as a fitting object, an engagement method, a robot system, a control device, and a computer program capable of suppressing the possibility of breakage are provided. It will be possible to provide.
  • the operation mode is switched to the compensation operation mode, and after trying to switch to the normal control mode a predetermined number of times, an alarm is output. For this reason, it is possible to suppress a large trouble that the object cannot be pulled out by forcibly fitting the object into the target object.
  • the present invention can be applied even to a normal robot arm having no flexible drive mechanism.
  • the present invention can be modified in various ways as long as it does not deviate from the gist thereof.
  • the invention can be applied to other engagements that require highly accurate positioning.
  • some components in the embodiments may be replaced with other known components.
  • Control device 10A Start position acquisition unit 10B Target position acquisition unit 10C Scratch detection unit 10D Route acquisition unit 10E Control command acquisition unit 10F Operation mode setting unit 20 Robot arm 20A Drive unit 20E End effector 20E1 Movable plate 20E2 Movable plate 20D Series elastic actuator 20DA Drive unit 20DE Elastic body 20DS Sensor 20J Joint 20L Link 50 Teaching device 100 Robot system

Landscapes

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

Abstract

ロボットアーム20を用いて対象物Wを保持するステップと、目的物Mに係合するように、ロボットアーム20を用いて対象物Wを移動させるステップと、対象物Wと目的物Mとのカジリの発生に基づいて、ロボットアーム20が自重を補償する補償動作モードに切り替えるステップと、を含む係合方法。

Description

係合方法、ロボットシステム、制御装置及びコンピュータプログラム
 本発明は、係合方法、ロボットシステム、制御装置及びコンピュータプログラムに関する。
 近年、ロボットアームを用いて部品等の対象物を保持し、目的物に係合させることが行われている。例えば、ロボットアームを用いて嵌合物を保持し、目標物に嵌合させる試みがなされている。しかしながら、10mm乃至50mmの直径を有する嵌合物を数μm乃至数10μmのクリアランスで目標物に挿入し嵌合させるためには、数μm以下の位置決め精度を要する。このような高精度の位置決めをロボットアームによって実現することは、容易でない。
 ロボットアームを用いた嵌合の試みの一例として、特許文献1には、嵌合物と被嵌合物との間に詰まりが生じた場合に、嵌合物の姿勢を変更することができる嵌合方法が記載されている。具体的には、円柱型の嵌合物の底面中心における力及びモーメントを検出し、嵌合物と被嵌合物との間に詰まりが生じているか否かを判定し、詰まりが生じていると判定された場合には、嵌合穴に侵入した距離よりも小さい値だけ上方に戻り、嵌合物の外周面を被嵌合物の内周面に押し付けることにより嵌合物の底面中心回りのモーメントに基づく力制御を行い、嵌合物の姿勢を修正する嵌合方法が記載されている。
特開2008-225854号公報
 しかしながら、特許文献1に記載されるように、嵌合物を被嵌合物に押し付けることにより被嵌合物に対する嵌合物の傾きを修正する方法では、嵌合対象物や嵌合物を破損させる可能性がある。
 そこで本発明は、嵌合物等の対象物を、嵌合対象物等の目的物に係合させる際に、破損可能性を抑制することが可能となる係合方法、ロボットシステム、制御装置及びコンピュータプログラムを提供することを目的とする。
 本開示は係合方法を提供する。この係合方法は、ロボットアームを用いて対象物を保持するステップと、目的物に係合するように、ロボットアームを用いて対象物を移動させるステップと、対象物と目的物とのカジリの発生に基づいて、ロボットアームが自重を補償する補償動作モードに切り替えるステップと、を含む。
 「カジリ」とは、局部的に発生する凝着のことをいう。カジリは、2つの部材が接触し、一方の表面に形成される突起(真実接触点)が、他方との接触により、他方側に凝着することにより発生する。凝着を起こしやすい材料間では、カジリは、常温でも発生する場合がある。カジリは、対象物又は目的物の形状精度のばらつき、表面粗さ又は表面形状の違い、これらに起因する片当たり、その他潤滑不良、異物混入等を原因として、発生し得る。カジリは、噛み付き、引掛り等と呼ばれる場合もある。
 「カジリの発生」とは、現実にカジリが発生したことのみならず、カジリ発生直前の状態になることを含む。例えば、現実にカジリが発生していないものの、二つの部材の接触圧力が閾値を越え、このままでは、カジリが発生することになる状態を含む。
 「補償動作モード」とは、ロボットアームが自重を補償するように動作する動作モードである。自重の補償は、例えば、ロボットアームの自重により1又は複数のジョイントに作用するトルクを取得し、このトルクを相殺乃至補償するための逆方向のトルクを、アクチュエータを用いて発生させることにより実現することが可能である。自重を補償するための機構を利用してもよい。
 補償動作モードは、典型的には、ロボットアームが自重を補償し、かつ、ロボットアームが復元力なしに外乱に追従するように変位する、動作モードである。
 「外乱」とは、制御系の状態を乱す外的作用のことをいう。外乱は、一般に、作用するタイミング及び大きさを予測することが困難な外的作用である。例えば、目的物表面の形状の乱れ等に起因して目的物から対象物に作用する外力、予測が困難な負荷変動、アクチュエータへの電圧変動は、外乱の一例である。
 「外乱に追従する」とは、外乱による影響を相殺乃至補償するように制御するのではなく、外乱に従ってロボットアームが変位することをいう。
 「復元力なしに外乱に追従する」とは、仮に外乱を取り除いた際に、元の位置にロボットアームが戻るための復元力を作用させることなく、外乱に従ってロボットアームが変位することをいう。従って、外乱が作用されなくなった時点で、ロボットアームは、その位置を維持する。なお、位置は、そのように解すべきことが当業者にとって合理的な場合において、姿勢を含むように解される。
 このような「補償動作モード」は、人間がロボットアームを動かして動作教示をするダイレクトティーチングをするときにも利用することが可能である。このとき、人間からロボットアームに作用する外力は、外乱に相当する。ロボットアームは、人間から作用される外力に従って変位する。また、外乱が作用されなくなると、即ち、人間が手を離すと、ロボットアームは、その位置を維持する。
 従って、この係合方法は、ロボットアームが自重を補償する補償動作モードにおいて、ロボットアームを復元力なしに外乱に追従するように変位させることにより、ロボットアームの動作教示を行うステップを含み、動作教示を行うステップを実行した後に、対象物を保持するステップを実行してもよい。
 又、この係合方法は、補償動作モードから、ロボットアームが外乱に追従するように変位しない通常制御モードに切り替えるステップと、を含んでもよい。
 通常制御モードにおいて、ロボットアームは、制御信号に従った位置及び姿勢を取るように制御される。
 更に、この係合方法は、補償動作モードに切り替えるステップを実行した後のロボットアームの位置に基づいて、目的物に係合するように、ロボットアームを用いて対象物を移動させるための経路を取得するステップと、を含んでもよい。
 加えて、補償動作モードに切り替えるステップ及び通常制御モードに切り替えるステップを所定回数実行した後にアラームを出力するステップと、を含んでおよい。
 なお、ロボットアームは、柔軟性を有する駆動機構を備えてもよい。
 ここで、「柔軟性」とは、弾性、粘性又は弾性及び粘性を備えていることをいう。弾性とは、応力を加えると変形し、応力を除去すると元に戻る性質をいい、弾性変形のしやすさを示す可撓性という言葉で表現される場合もある。粘性とは、流体の流動速度を一様化する応力を生じさせる性質をいう。柔軟性を備えた駆動機構は、柔軟性を付与するための、例えば、磁性流体、機械ばね、空気ばね、磁力ばね及びベーンモータの何れか一つを少なくとも備えてもよい。
 「柔軟性を有する駆動機構」は、直列弾性アクチュエータであってもよい。直列弾性アクチュエータ(Series Elastic Actuator)は、例えば、モータと、ばね等の弾性体とを備える。モータから出力されるトルクは、弾性体を介して、剛性を有するリンクに伝達される。このため、ロボットアームによる対象物を目的物に接触させて倣わせることを容易に実現することが可能になる。直列弾性アクチュエータが備える弾性体が弾性変形するように、対象物を目的物に対して倣わせることが可能になる。
 なお、対象物を目的物に対して倣わせるとは、対象物を目的物に接触させながら、対象物を目的物に対して相対的に移動させることをいう。相対的に移動させることは、並進移動に限られず、目的物に対して対象物を相対的に回転移動させることを含む。
 本開示は、ロボットアームと、ロボットアームを制御する制御装置であって、ロボットアームを用いて対象物を保持するステップと、目的物に係合するように、ロボットアームを用いて対象物を移動させるステップと、対象物と目的物とのカジリの発生に基づいて、ロボットアームが自重を補償する補償動作モードに切り替えるステップと、を実行するための制御装置と、を備えるロボットシステムを提供する。
 本開示は、ロボットアームを制御する制御装置であって、ロボットアームを用いて対象物を保持するステップと、目的物に係合するように、ロボットアームを用いて対象物を移動させるステップと、対象物と目的物とのカジリの発生に基づいて、ロボットアームが自重を補償する補償動作モードに切り替えるステップと、を実行可能に構成される制御装置を提供する。
 さらに本開示は、コンピュータに、ロボットアームを用いて対象物を保持するステップと、目的物に係合するように、ロボットアームを用いて対象物を移動させるステップと、対象物と目的物とのカジリの発生に基づいて、前記ロボットアームが自重を補償する補償動作モードに切り替えるステップと、を実行するための制御命令を生成させる、コンピュータプログラムを提供する。
ロボットシステム100の機能ブロック図 ロボットアーム20によってインサート部品Wである対象物を金型Mである目的物に嵌合する様子を側面視で示す模式図 ロボットアーム20によってインサート部品Wである対象物を金型Mである目的物に嵌合する様子を上面視で示す模式図 ロボットシステム100への動作教示方法を示すフローチャート ロボットシステム100の動作方法を示すフローチャート ロボットシステム100による係合方法を示すフローチャート ロボットアーム20を用いてインサート部品を金型に嵌合する様子を示す模式図
 以下、本発明の実施形態について図面を用いて説明する。以下の実施形態は、本発明を説明するための例示であり、本発明をその実施形態のみに限定する趣旨ではない。
  図1は、ロボットシステム100の機能ブロック図を示している。図2A及び図2Bは、ロボットアーム20によってインサート部品Wである対象物を金型Mである目的物に嵌合する様子を側面視及び上面視で示す模式図である。
 ロボットシステム100は、ロボットアーム20と、ロボットアーム20を制御する制御装置10とを備えている。本実施形態に係るロボットシステム100は、嵌合物(「対象物」の一例)であるインサート部品Wを保持し、この嵌合物を嵌合対象物(「目的物」の一例)である金型Mの組付け部位に組み付ける嵌合動作を実行する。但し、本発明は、対象物を目的物に係合しようとする際に、カジリが発生する可能性を有する動作一般に適用することが可能である。
 図2A及び図2Bに示されるように、ロボットアーム20は、対象物を保持し、これを目的物に係合させる動作を含む一連の動作を行う。ロボットアーム20は、例えば、垂直多関節ロボットであり、ベースと、複数のリンク20Lと、各リンク20Lを接続するジョイント20Jと、エンドエフェクタ20Eと、一又は複数の駆動部20Aと、一又は複数の直列弾性アクチュエータ20Dとを備える。但し、ロボットアーム20は、垂直多関節ロボットに限られることはなく、例えば、水平多関節型ロボット装置、パラレルリンク型ロボット装置であってもよい。
 リンク20Lは、剛性を有する部材から構成されており、例えば、ベースに対して回動可能に取り付けられた胴部に相当するリンク20Lと、胴部に対して回動可能に取り付けられた下腕部に相当するリンク20Lと、下腕部に対して回動可能に取り付けられた上腕部に相当するリンク20Lと、上腕部に対して回動可能に取り付けられた手首部に相当するリンク20Lとを備える。
 エンドエフェクタ20Eは、対象物を保持する機能を有する。エンドエフェクタ20Eは、手首部に相当するリンク20Lの先端に取り付けられており、例えば、アクチュエータによって開閉する可動プレート20E1及び20E2によって対象物を挟んで保持可能に構成されている。但し、エンドエフェクタ20Eは、これに限られるものではなく、例えば、対象物の表面を保持するための複数の吸着パッドと制御装置10から送信される制御信号に基づいて吸着パッドに負圧を発生させるアクチュエータを備える保持機構や、或いは、電磁力で対象物を保持する保持機構であってもよい。
 本実施形態に係るロボットアーム20は、リンク20L同士を接続する少なくとも一つのジョイント20Jに設けられた直列弾性アクチュエータ20Dを備えている。
  図1に示されるように、直列弾性アクチュエータ20D(「柔軟性を有する駆動機構」の一例)は、例えば、駆動部20DAと、駆動部20DAに接続される弾性体20DEと、カジリを検出するためのセンサ20DSとから構成される。駆動部20DAは、例えば、サーボモータから構成される。弾性体20DEは、例えば、機械ばねから構成される。直列弾性アクチュエータ20Dにおいて駆動部20DAから出力される動力は、弾性体20DEを介して、出力側のリンク20Lに伝達し、これを回動させる。センサ20DSは、カジリを検出するための情報を取得する。例えば、トルクに基づいてカジリを検出する場合、センサ20DSは、ロボットアーム20により対象物が目的物に接触したときのトルクを示す情報として機械ばねの変位量を取得するための変位センサから構成される。
 以上のような構成の下、柔軟性を備えた駆動機構に相当する直列弾性アクチュエータ20Dによって駆動される部分の慣性、質量及び長さ、外力並びに弾性体20DEである機械ばねのばね定数をパラメータとする運動方程式が成立する。このため、制御装置10は、機械ばねのばね定数及び変位量に基づいて、インピーダンスを制御するメカニカル・コンプライアンス制御を実行可能に構成されている。
 なお、直列弾性アクチュエータ20Dは、駆動部20DAであるサーボモータの駆動軸に接続され、動力を機械ばねに伝達するギヤを備えていてもよい。更に、直列弾性アクチュエータ20Dは、粘性に基づいて衝撃を緩和させるダンパ機構及び動力の伝達をスイッチするためのクラッチ機構を備えてもよい。粘性を有するダンパ機構等の粘性体を付与する場合、運動方程式には、粘性定数がパラメータとして加えられる。例えば、粘性定数にリンク角度の時間変化を乗じた値をトルクとして考慮された運動方程式が成立する。
 直列弾性アクチュエータ20Dによって駆動されるリンク20L以外のリンク20Lは、例えば、サーボモータから構成される駆動部20Aによって駆動される。駆動部20Aは、出力側のリンク20Lを駆動軸回りに回動させる。駆動部20Aは、リンク20Lに内蔵されていてもよい。以上のような構成により、複数のリンク20Lを回動させることが可能になるため、リンク20Lの先端に相当するエンドエフェクタ20Eの位置及び姿勢を変化させることが可能となる。なお、本開示における位置を示す情報は、合理的に必要と考えられる場合、姿勢を示す情報を含む場合がある。
 図1に示されるように、制御装置10は、ロボットアーム20の基準となる位置(例えば、手先位置に相当するエンドエフェクタ20Eのセンターポイント。以下、「基準位置」という。)の開始位置及びその時の姿勢を取得する開始位置取得部10Aと、目標位置及びその時の姿勢を取得する目標位置取得部10Bと、カジリを検出するカジリ検出部10Cと、開始位置取得部10Aにより取得された開始位置と目標位置取得部10Bにより取得された、一、又は、複数の目標位置を結ぶ経路を取得する経路取得部10Dと、後述する通常制御モード及び補償動作モードのそれぞれにおいて、ロボットアーム20の各駆動部20Aに相当するサーボモータ及び直列弾性アクチュエータ20Dのサーボモータを制御するための制御命令を取得する制御命令取得部10Eと、通常制御モードと補償動作モードを切り替えるための動作モード設定部10Fとを備える。
 開始位置取得部10Aは、例えば、制御装置10に接続される教示装置50から入力された開始位置及びその時の姿勢を取得する。教示装置50は、現場で実際にロボットアーム20を動かしてその時の基準位置及び姿勢を開始位置として教示するオンラインティーチングに従う教示装置50でもよいし、コンピュータプログラムによって基準位置の位置及び姿勢を開始位置として教示する、テキスト型、シミュレータ型、エミュレータ型、又は、自動ティーチング型等のオフラインティーチングに従う教示装置50でもよい。後述するように、開始位置取得部10Aは、通常制御モードから補償動作モードに切り替わり、ロボットアームが外乱に追従して変位した時の、変位後における基準位置及び姿勢を開始位置として取得することが可能に構成される。
 目標位置取得部10Bは、例えば、開始位置と同様に、教示装置50から入力された目標位置及びその時の姿勢を取得する。目標位置取得部10Bは、複数の目標位置及びその時の姿勢を取得することが可能である。
 カジリ検出部10Cは、センサ20DSから取得した情報に基づいてカジリの有無を判断する。例えば、カジリ検出部10Cは、直列弾性アクチュエータ20Dの弾性体20DEの変位量を示す情報をセンサ20DSから取得し、これに基づいて取得された回転トルクが所定の閾値を越えている場合に、カジリを検出するように構成される。
 但し、カジリの検出方法は、これに限られるものではない。例えば、エンドエフェクタ20Eに力覚センサを設置し、カジリ検出部10Cは、対象物が目的物から受ける接触圧力の大きさを示す情報を力覚センサから取得し、これに基づいて取得された接触圧力が所定の閾値を越えている場合に、カジリを検出するように構成されてもよい。又、カジリ検出部は、ロボットアーム20の位置情報に基づいて、例えば、指令値と実際値との差に基づいて、カジリを検出するように構成してもよい。
  経路取得部10Dは、開始位置と目標位置(複数の目標位置が取得されている場合は、開始位置と目標位置及び目標位置間)を接続する経路(計画軌跡)を演算処理等により取得する。
 制御命令取得部10Eは、ロボットアーム20の各駆動部20A(直列弾性アクチュエータ20Dの駆動部20DAを含む)を駆動するための制御命令を演算処理等により取得する。
 通常制御モードにおいて、制御命令取得部10Eは、基準位置を経路取得部10Dによって取得された経路に従って移動させるために、ロボットアーム20の各駆動部20Aのサーボモータを制御するための制御命令を演算処理等により取得する。制御命令取得部10Eは、逆運動学演算(インバースキネマティクス)により、基準位置を経路上に位置させるための各サーボモータの回転角度を算出し、これに基づいて制御命令を生成することが可能である。生成された制御命令は、制御装置10の不揮発性記憶素子に格納することが可能である。
 通常制御モードにおいて、制御命令取得部10Eは、外力等の外乱による影響を補償する制御を行う。例えば、実際の位置(例えば、実際の所定リンク20Lの角度)と制御命令における指令値(所定リンク20Lの角度)の差分に基づいて外乱による影響を推定し、これに基づいて位置の補正量を取得し、指令値に加えることにより、外乱による影響を補償する制御命令を生成する。
  一方で補償動作モードにおいて、制御命令取得部10Eは、ロボットアーム20の自重(対象物を保持している場合、その対象物の重量を含む。)を補償するための制御命令を演算処理等により取得する。具体的には、制御命令取得部10Eは、ロボットアーム20の自重により各ジョイント20Jに作用するトルクを演算処理等により取得し、このトルクを相殺するための逆方向のトルクを各ジョイント20Jに発生させるための駆動部20A及び駆動部20DAへの制御命令を演算処理等により取得する。
 補償動作モードにおいて、制御命令取得部10Eは、外力等の外乱による影響を補償するような制御を行わず、ロボットアーム20が外乱に追従するような制御を行う。具体的には、上述したように、ロボットアーム20の自重を補償するためのトルクを駆動部20A及び駆動部20DAに発生させ、外乱が生じても、外乱による影響を補償するようなトルクを発生させるための制御命令を生成しない。又、外乱にロボットアーム20が追従した結果、ロボットアーム20の位置及び姿勢が変更した場合、制御命令取得部10Eは、再度、その時のロボットアーム20の位置及び姿勢に基づいて、自重を補償するようなトルクを各ジョイント20Jに発生させるための駆動部20A及び駆動部20DAへの制御命令を演算処理等により取得する。
 動作モード設定部10Fは、ロボットアーム20の制御装置10による動作モードとして、通常制御モード又は補償動作モードを設定する。本実施形態においては、通常制御モードでロボットアーム20が動作中に、カジリ検出部10Cによりカジリが検出された場合、カジリの発生に基づいて、動作モード設定部10Fは、通常制御モードから補償動作モードに動作モードを切り替える。又、ロボットアーム20が外乱に追従した後は、動作モード設定部10Fは、動作モードを、補償動作モードから通常制御モードに切り替える。
 ハードウェア構成に関し、制御装置10は、例えば、CPU(Central Processing Unit)、GPU(Graphical Processing Unit)等のプロセッサである演算素子と、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)等の揮発性記憶素子と、NORフラッシュメモリ、NANDフラッシュメモリ、HDD(Hard Disc Drive)等の不揮発性記憶素子と、これらを接続するバス等の通信手段を備えるコンピュータから構成することが可能である。不揮発性記憶素子には、例えば、本実施形態に示される各処理を実行するためのコンピュータプログラム(許容範囲を示す情報等のデータを含む)が格納されている。揮発性記憶素子は、これらコンピュータプログラムの少なくとも一部及び演算処理結果等を一時的に記憶する。但し、これら演算素子、不揮発性記憶素子等の少なくとも一部は、インターネット等の通信ネットワークに接続された遠隔地に設置されていてもよい。例えば、演算素子は、通信ネットワークを介して、コンピュータプログラム又は必要なデータを取得するように構成されてもよい。
  制御装置10とロボットアーム20は、無線又は有線による通信手段によって情報の送受信が可能に構成されている。
 制御装置10には、ロボットシステム100に動作教示するための教示装置50が接続されてもよい。教示装置50は、例えば、ダイレクトティーチング等のオンラインティーチングを行うための携帯型の教示ペンダントを備える。教示装置50は、制御装置10と同様に、演算素子、揮発性記憶素子、不揮発性記憶素子を備え、更に、ディスプレイを有する表示手段及び複数の操作キー並びにレバーを有する入力手段を備えている。入力手段は、ディスプレイを押圧して入力を行うタッチパネル式の入力手段から構成されてもよい。
 (教示方法)
  以下では、まず、ロボットシステム100にダイレクトティーチングにより動作教示を行うための方法を説明する。図3は、ロボットシステム100に動作教示を行うためのプロセスを示すフローチャートである。
 同図に示されるように、作業者は、例えば、教示装置50を用いて、教示動作モードを選択する(ステップS31)。
  制御装置10の動作モード設定部10Fは、教示装置50から教示動作モードの選択を受け付けると、動作モードを補償動作モードに設定する(ステップS32)。
  補償動作モードが設定されたことに基づいて、ロボットシステム100は、自重を補償する補償動作モードを開始する(ステップS33)。制御装置10の制御命令取得部10Eは、ロボットアーム20の自重を補償するための制御命令を演算処理等により取得し、制御装置10は、制御命令取得部10Eによって取得された制御命令を、駆動部20A及び駆動部20DAに送信する。駆動部20A及び駆動部20DAは、受信した制御命令に基づいて、ロボットアーム20の自重を補償する。外乱がない場合、ロボットアーム20は、位置及び姿勢を維持する。
 次いで作業者は、手動でロボットアーム20を移動させて開始位置を決定する。教示装置50は、その時のロボットアーム20の基準位置を、開始位置として教示する(ステップS34)。例えば、作業者は、エンドエフェクタ20Eが対象物の保持を開始する位置を、開始位置として教示してもよい。作業者が手動でロボットアーム20を移動させている間、制御装置10は、ロボットアーム20が外乱、即ち、作業者から加えられる外力に追従するような制御を行う。具体的には、制御装置10は、外力により連続的に変動するロボットアーム20の自重のみを補償するようなトルクを各ジョイント20Jに発生させるための駆動部20A及び駆動部20DAへの制御命令を短い周期で繰り返し取得し、ロボットアーム20に送信することによって、変動する位置及び姿勢にかかわらず、ロボットアーム20の自重を補償する制御を行う。
 制御装置10は、開始位置に存在するときのエンドエフェクタ20Eの位置及び姿勢、各リンク20Lの角度等を取得し、開始位置に関連付けて不揮発性記憶素子に格納する(ステップS35)。
  更に、作業者は、エンドエフェクタ20Eに対象物を保持させるための動作を教示し(ステップS36)、制御装置10は、対象物を保持するための動作を不揮発性記憶素子に格納する(ステップS37)。
 次いで作業者は、手動でロボットアーム20を複数回にわたって移動させ、そのときのエンドエフェクタ20E等の位置を制御装置10に取得させることにより、ロボットシステム100に複数の目標位置を教示する(ステップS38)。
  制御装置10は、各目標位置に存在するときのエンドエフェクタ20Eの位置及び姿勢、各リンク20Lの角度を取得し、各目標位置に関連付けて記憶素子に格納する(ステップS39)。
 制御装置10は、開始位置及び複数の目標位置を接続する経路を経路生成アルゴリズムに従った演算により取得する(S40)。
  その後、制御装置10は、取得した経路を不揮発性記憶素子に格納してもよい。又、制御装置10の制御命令取得部10Eは、取得した目標位置及び経路に基づいて、ロボットアーム20の各駆動部及び直列弾性アクチュエータ20Dの駆動部を制御するための制御命令を演算により取得し不揮発性記憶素子に格納してもよい。
 (係合方法)
  続いて、ロボットシステム100を用いた係合方法を説明する。本実施形態に係る係合方法の一例として、インサート部品W(「対象物」の一例)を、円筒状の凹部が形成された金型M(「組付け部位」又は「目的物」の一例)に嵌合する方法について説明する。
 図4は、ロボットシステム100の動作方法を示すフローチャートである。図5は、その動作方法において対象物を目的物に嵌合するときの係合方法を示すフローチャートである。図6は、ロボットアーム20を用いてインサート部品を金型に嵌合する様子を示す模式図である。
 図2A及び図2Bに示したように、ロボットアーム20は、胴部に対して回動可能に取り付けられた下腕部に相当するリンク20Lと、下腕部に対して回動可能に取り付けられた上腕部に相当するリンク20Lと、上腕部に対して回動可能に取り付けられた手首部に相当するリンク20Lと、対象物を可動プレート20E1及び20E2で挟むことにより保持可能なエンドエフェクタ20Eと、各リンク20Lを接続するジョイント20Jを備えている。例えば、上腕部に相当するリンク20Lと下腕部に相当するリンク20Lの間のジョイント20Jには、下腕部に相当するリンク20Lを駆動する直列弾性アクチュエータ20Dが搭載されている。
 インサート部品Wは、例えば、円板状に形成されている。金型Mに形成される円筒状の凹部は、例えば、インサート部品Wの直径よりも僅かに大きく(例えば、50μm大きく)形成されている。
 従来、このような対象物の嵌合をロボットアーム20によって行うことは困難であった。対象物と凹部との間隙が小さい場合、対象物が僅かに傾いただけであっても、対象物と目的物との間にカジリが発生してしまう。カジリが発生すると、対象物を凹部に挿入することが困難となる。又、対象物又は目的物が損傷してしまう可能性があった。
 しかしながら、本開示に示される係合方法によって、カジリ(カジリに近い状態を含む)が発生しても、対象物を目的物に係合させる可能性を高めることが可能になる。
  図4に示されるように、まず制御装置10の開始位置取得部10A及び目標位置取得部10Bは、それぞれ、開始位置を示す情報、目標位置を示す情報を取得する(ステップS41)。制御装置10は、これら情報を不揮発性記憶素子から読み出すことにより取得してもよい。制御装置10は、教示装置50からこれら情報を取得してもよい。なお、動作モード設定部10Fは、動作モードを通常制御モードに設定している。
 制御装置10の経路取得部10Dは、経路生成アルゴリズムを不揮発性記憶素子から読み出し、これに基づいて開始位置及び複数の目標位置を接続する経路を演算により取得し(ステップS42)、制御命令取得部10Eは、取得した目標位置及び経路等に基づいて、ロボットアーム20の各駆動部及び直列弾性アクチュエータ20Dの駆動部を制御するための制御命令を演算により取得する(ステップS43)。
 なお、一連の動作を実現するための駆動部及びエンドエフェクタ20Eのアクチュエータ等を制御する制御命令が不揮発性記憶素子に格納されている場合、制御装置10は、開始位置情報等が反映された制御命令を読み出すことにより、これら情報を取得してもよい。
 次いでロボットアーム20は、制御装置10から受け取った制御命令に基づいて各リンク20Lを駆動させる。まず、開始位置において、ロボットアーム20のエンドエフェクタ20Eは、対象物を保持する(ステップS44)。
 その後、ロボットアーム20は、対象物を移動させて、目的物に近づける(ステップS45)。
  そして、ロボットアーム20は、対象物の端部を目的物の表面に接触させる(ステップS46、図6A)。
  ロボットアーム20は、対象物の端部が目的物の表面に接触した状態を維持したまま、対象物を目的物に対して相対的に移動させることにより、対象物を目的物に対して倣わせる(ステップS47、図6B)。このとき、直列弾性アクチュエータ20Dの弾性体20DEは、変位量に応じて弾性変形する。
 ロボットアーム20の基準位置が目的物の凹部付近に設定される目標位置近傍に到達したことを制御装置10が判定すると、制御装置10は、次の目標位置に向かってロボットアーム20を動作させる。具体的には、ロボットアーム20は、対象物の端部を凹部内に僅かに入り込ませた状態で、凹部の角部に接触している対象物の側面を支点として、対象物を目的物に対して相対的に回転移動させることにより、対象物が凹部の外にはみ出る可能性を抑制しつつ、対象物を目的物に対して倣わせる(ステップS48、図6C)。
  ロボットアーム20が対象物を水平になるまで回転させた後、対象物を目的物に嵌合させるための嵌合方法(「係合方法」の一例)が実行される。
 図5に示されるように、制御装置10は、対象物が水平となり、目的物に嵌合されていない状態における基準位置から、対象物が目的部に嵌合された状態における目標位置に向かってロボットアーム20の動作を開始させる(ステップS51)。具体的には、制御装置10は、現在位置から、次の目標位置に至るまでの直進の経路に従って、ロボットアーム20を移動させる。
 ロボットアーム20の動作中、カジリ検出部10Cは、センサ20DSから取得した情報に基づいてカジリの有無を判断する(ステップS52)。
  カジリが検出されない場合(NO)、対象物は目的物に嵌合され、動作が完了する(ステップS62)。
 カジリが検出された場合(YES)、制御装置10は、再動作カウントが、所定の閾値に到達しているか判断する(ステップS53)。
 再動作カウントが所定の閾値に到達していない場合(NO)、制御装置は、再動作カウントを1加算する(ステップS54)。再動作カウントの初期値はゼロである。従って、カジリが初めて検出された場合、再動作カウントは、1になる。
 そして制御装置10は、ロボットアーム20の動作を停止させる(ステップS55)。
  次いで、制御装置10の動作モード設定部10Fは、ロボットアーム20の動作モードを通常制御モードから補償動作モードに切り替える(ステップS56)。
  制御装置10の制御命令取得部10Eは、ロボットアーム20の自重を補償するための制御命令を演算処理等により取得し、制御装置10は、制御命令取得部10Eによって取得された制御命令を、駆動部20A及び駆動部20DAに送信する。駆動部20A及び駆動部20DAは、受信した制御命令に基づいて、ロボットアーム20の自重を補償する。従って、ロボットアーム20は、待機状態となる。待機状態は、例えば、1ms以下である(ステップS57)。
 仮に、外乱がない場合、ロボットアーム20は、補償動作モードに切り替える直前の位置及び姿勢を維持する。しかしながら、カジリは、対象物と目的物が接触し、一方の表面に形成される突起(真実接触点)が、他方と接触し、他方側に凝着すること(又は、それに近い状態)により発生するものであるから、制御系の状態を乱す外的作用である外乱に相当する。なお、柔軟性のあるロボットアームにてカジリが発生した際も同様の状態となる。このため、ロボットアーム20及びこれに保持される対象物は、目的物から受ける外乱に追従して変位する。但し、カジリを生じさせた突起等は、微小(例えば、10μm以下)であるから、ロボットアーム20及びこれに保持される対象物の位置又は姿勢の変位も微小であり、例えば、10μm以下である。しかしながら、カジリを生じさせた突起等に追従するようにロボットアーム20及びこれに保持される対象物は、変位するのであるから、カジリを生じさせた突起等の表面に倣うように、ロボットアーム20及びこれに保持される対象物の位置又は姿勢を変位させている可能性がある。このとき、仮に外乱を取り除いた際に、元の位置にロボットアームが戻るための復元力を作用させないようにすることが好ましい。このように構成することによって、外乱に追従してロボットアームを好適に変位させることが可能になる。
 その後、制御装置10の動作モード設定部10Fは、ロボットアーム20の動作モードを補償動作モードから通常制御モードに切り替える(ステップS58)。
  そして、経路取得部10Dは、現在位置、即ち、現在のロボットアーム20の基準位置を新たな開始位置とし、対象物が目的部に嵌合された状態を目標位置とする経路を取得する(ステップS59)。
 制御装置10は、現在位置から、目標位置に至るまでの直進の経路に従って、ロボットアーム20を移動させるように試みる(ステップS60)。
 ロボットアーム20の動作中、カジリ検出部10Cは、センサ20DSから取得した情報に基づいてカジリの有無を判断する(ステップS52)。
  カジリが検出されない場合(NO)、対象物は目的物に嵌合され、動作が完了する(ステップS62)。
 カジリが再度検出された場合(YES)、制御装置10は、再動作カウントが、所定の閾値に到達しているか判断する(ステップS53)。
  このとき、再動作カウントが所定回数実行され、所定の閾値に到達している場合(YES)、制御装置は、不図示の出力手段に、アラームを出力させる(ステップS61)。
 以上述べたように、本実施形態に係る係合方法によれば、カジリが検出されたときに、動作モードを補償動作モードに切り替えることにより、カジリの原因となる外乱に追従するようにロボットアーム20及びこれに保持される対象物の位置又は姿勢を僅かに変位させることが可能になる。このため、変位後に、通常制御モードに切り替えて再動作を開始させることにより、カジリを解消させて係合を完了させることができる可能性が高まる。従って、嵌合物等の対象物を、嵌合対象物等の目的物に係合させる際に、破損可能性を抑制することが可能となる係合方法、ロボットシステム、制御装置及びコンピュータプログラムを提供することが可能となる。
 更に、カジリが検出されたときに、動作モードを補償動作モードに切り替え、所定回数、通常制御モードとの切り替えを試みた後は、アラームを出力させる。このため、無理に対象物を目的物に嵌合させようとすることにより対象物が抜けなくなるという大きなトラブルを抑制することが可能になる。
 加えて、柔軟性を備える駆動機構を有するロボットアームを用いることにより、対象物を組付け部位に接触させながら、対象物を組付け部位に対して相対的に移動させることが可能になる。このことによっても、部品破損や、カジリの途中で止まって、対象物が抜けなくなる等の大きなトラブルを防止する事が可能となる。但し、柔軟性を備える駆動機構を有さない通常のロボットアームであっても、本発明を適用することが可能である。
 更に、ダイレクトティーチングによる動作教示をする際にも、ロボットアームの制御については、同一の補償動作モードを利用することにより、既存のロボットシステムを利用することが可能である。
 また、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。たとえば、高精度の位置決めを要する他の係合の際に、本発明を適用することが可能である。また、当業者の通常の創作能力の範囲内で、実施形態における一部の構成要素を、知られている他の構成要素と置換することができる。
10 制御装置
10A 開始位置取得部
10B 目標位置取得部
10C カジリ検出部
10D 経路取得部
10E 制御命令取得部
10F 動作モード設定部
20 ロボットアーム
20A 駆動部
20E エンドエフェクタ
20E1 可動プレート
20E2 可動プレート
20D 直列弾性アクチュエータ
20DA 駆動部
20DE 弾性体
20DS センサ
20J ジョイント
20L リンク
50 教示装置
100 ロボットシステム

Claims (10)

  1.  ロボットアームを用いて対象物を保持するステップと、
     目的物に係合するように、前記ロボットアームを用いて前記対象物を移動させるステップと、
     前記対象物と前記目的物とのカジリの発生に基づいて、前記ロボットアームが自重を補償する補償動作モードに切り替えるステップと、
     を含む係合方法。
  2.  前記補償動作モードは、前記ロボットアームが自重を補償し、かつ、前記ロボットアームが復元力なしに外乱に追従するように変位する、動作モードである、
     請求項1に記載の係合方法。
  3.  前記補償動作モードから、前記ロボットアームが外乱に追従するように変位しない通常制御モードに切り替えるステップと、
     を含む請求項2に記載の係合方法。
  4.  前記ロボットアームが自重を補償する前記補償動作モードにおいて、前記ロボットアームを復元力なしに外乱に追従するように変位させることにより、前記ロボットアームの動作教示を行うステップを含み、
     前記動作教示を行うステップを実行した後に、前記対象物を保持するステップを実行する、
     請求項1又は2に記載の係合方法。
  5.  前記補償動作モードに切り替えるステップを実行した後の前記ロボットアームの位置に基づいて、前記目的物に係合するように、前記ロボットアームを用いて前記対象物を移動させるための経路を取得するステップと、
     を含む請求項1乃至4の何れか一項に記載の係合方法。
  6.  前記補償動作モードに切り替えるステップ及び前記通常制御モードに切り替えるステップを所定回数実行した後にアラームを出力するステップと、
     を含む請求項3に記載の係合方法。
  7.  前記ロボットアームは、柔軟性を有する駆動機構を備える、
     請求項1乃至6の何れか一項に記載の係合方法。
  8.  ロボットアームと、
     前記ロボットアームを制御する制御装置であって、
     前記ロボットアームを用いて対象物を保持するステップと、
     目的物に係合するように、前記ロボットアームを用いて前記対象物を移動させるステップと、
     前記対象物と前記目的物とのカジリの発生に基づいて、前記ロボットアームが自重を補償する補償動作モードに切り替えるステップと、
     を実行するための制御装置と、
     を備えるロボットシステム。
  9.  ロボットアームを制御する制御装置であって、
     前記ロボットアームを用いて対象物を保持するステップと、
     目的物に係合するように、前記ロボットアームを用いて前記対象物を移動させるステップと、
     前記対象物と前記目的物とのカジリの発生に基づいて、前記ロボットアームが自重を補償する補償動作モードに切り替えるステップと、
     を実行可能に構成される制御装置。
  10.  コンピュータに、
     ロボットアームを用いて対象物を保持するステップと、
     目的物に係合するように、前記ロボットアームを用いて前記対象物を移動させるステップと、
     前記対象物と前記目的物とのカジリの発生に基づいて、前記ロボットアームが自重を補償する補償動作モードに切り替えるステップと、
     を実行するための制御命令を生成させる、
     コンピュータプログラム。
PCT/JP2021/024738 2020-07-21 2021-06-30 係合方法、ロボットシステム、制御装置及びコンピュータプログラム WO2022019070A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022538663A JPWO2022019070A1 (ja) 2020-07-21 2021-06-30

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020124326 2020-07-21
JP2020-124326 2020-07-21

Publications (1)

Publication Number Publication Date
WO2022019070A1 true WO2022019070A1 (ja) 2022-01-27

Family

ID=79729435

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/024738 WO2022019070A1 (ja) 2020-07-21 2021-06-30 係合方法、ロボットシステム、制御装置及びコンピュータプログラム

Country Status (2)

Country Link
JP (1) JPWO2022019070A1 (ja)
WO (1) WO2022019070A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0796427A (ja) * 1993-09-27 1995-04-11 Mazda Motor Corp ロボットの制御装置
JP2003236785A (ja) * 2002-02-15 2003-08-26 Yaskawa Electric Corp ロボット制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0796427A (ja) * 1993-09-27 1995-04-11 Mazda Motor Corp ロボットの制御装置
JP2003236785A (ja) * 2002-02-15 2003-08-26 Yaskawa Electric Corp ロボット制御装置

Also Published As

Publication number Publication date
JPWO2022019070A1 (ja) 2022-01-27

Similar Documents

Publication Publication Date Title
CN108381529B (zh) 一种工业机械臂的人机协作示教方法
KR102144142B1 (ko) 조인트의 적어도 하나의 특성을 결정하기 위한 방법 및 시스템
CN110076773B (zh) 机器人设备、制造物品的方法及电机驱动设备
CN108453728B (zh) 具有多模式控制框架的冗余欠驱动机器人
JP5897644B2 (ja) ロボットの制御装置
US7212886B2 (en) Robot control apparatus and method
US20110060460A1 (en) Robot control apparatus
CN101947789B (zh) 用于操作机械手的方法及装置
JP2019123051A (ja) ロボット装置、ロボットの制御方法、ロボットの制御装置
CN108748144B (zh) 一种人机协作机械臂的碰撞识别方法
JP2021028112A (ja) ロボット装置、物品の製造方法、ロボット装置の制御方法、プログラム、記録媒体、駆動装置、駆動装置の制御方法
WO2022019070A1 (ja) 係合方法、ロボットシステム、制御装置及びコンピュータプログラム
JP6137379B2 (ja) ロボット装置
US20230278205A1 (en) Robot system and robot control device
JPH07198370A (ja) 力制御ロボットの位置検出プローブ
JP3580562B2 (ja) ロボット
WO2022004371A1 (ja) 動作方法、ロボットシステム、制御装置、教示方法及びプログラム
WO2019215998A1 (ja) ロボットの制御方法
JP7457628B2 (ja) 動作方法、ロボットシステム、制御装置、教示方法及びプログラム
JP2021035697A (ja) 作業機の動作制御方法
JP2022062951A (ja) 清掃方法、清掃装置、制御装置、コンピュータプログラム及び処理方法
JP2022062889A (ja) 清掃方法、教示方法、プログラム、制御装置、清掃用ロボットシステム、シート貼付方法及び処理方法
JP5299255B2 (ja) ロボット制御装置
WO2022004372A1 (ja) ロボットアームの動作方法、ロボットシステム、教示方法及びプログラム
JP7479976B2 (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: 21846300

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022538663

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

Country of ref document: EP

Kind code of ref document: A1