WO2018079107A1 - 外力検出方法 - Google Patents
外力検出方法 Download PDFInfo
- Publication number
- WO2018079107A1 WO2018079107A1 PCT/JP2017/032864 JP2017032864W WO2018079107A1 WO 2018079107 A1 WO2018079107 A1 WO 2018079107A1 JP 2017032864 W JP2017032864 W JP 2017032864W WO 2018079107 A1 WO2018079107 A1 WO 2018079107A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- acceleration
- external force
- current
- mass
- value
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01L—MEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
- G01L1/00—Measuring force or stress, in general
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01L—MEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
- G01L5/00—Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
Definitions
- This invention relates to an external force detection method for detecting an external force applied to an actuator movable part.
- robots industrial robots
- This robot has an end effector such as a hand attached to the tip of an arm, and performs work by gripping a work object (part or work).
- the operation of the robot is generally controlled by position control. Therefore, when the target position of the work object programmed in advance and the actual position are different due to the dimensional error or gripping position error of the work object, a large force (external force) when the work object comes into contact with another object. ) May occur, and the work object may be scratched or damaged.
- a jig that absorbs the force generated by the position error of the work object may be separately installed.
- this buffer requires different characteristics depending on the shape and material of the work object, it is necessary to prepare buffers that differ by the number of types of work objects, which are designed each time. Therefore, there are problems that the cost is increased and the apparatus is enlarged.
- a force sensor is installed between the robot and the end effector, and if an excessive force is likely to be generated when the work target is in contact, the detection result of the force sensor is fed back to the robot, and no excessive force is generated. There is also a way to do so. In this case, a buffer is not necessary. However, the force sensor is expensive.
- the robot has a large and heavy moving part and a deceleration mechanism. Can't stop suddenly.
- the force generated at the time of contact is the sum of the impact force due to inertia and the force generated by the robot at the time of contact.
- the impact force due to inertia is proportional to the product of the mass of the work object and the robot movable part and the moving speed.
- the robot since the robot has a large and heavy mechanism, it is necessary to slow down the moving speed immediately before contact in order to reduce the impact force due to inertia.
- the robot does not stop suddenly, so even if it decelerates suddenly from the time when the stop command is issued, it stops at a position that deviates from the contact position. The work object is crushed. Since the overshoot amount of the position is proportional to the moving speed, the speed at which the work object is brought closer to another object must be slowed down.
- the end effector is attached to the tip of the force sensor. Therefore, when the robot decelerates rapidly, a force proportional to the acceleration in the negative direction is generated in the force sensor due to the influence of the mass of the end effector. However, it is difficult to distinguish between the force proportional to the acceleration and the force generated by the contact of the work object, and in order to distinguish, the deceleration time of the robot must be significantly increased.
- the posture that the robot can take when performing operations such as assembly, pressing, and polishing is not always constant, and is often changed according to the state of the operation. For example, in an operation of polishing while tracing a curved surface, the posture needs to be continuously changed.
- the force sensor since the end effector is attached to the tip of the force sensor, when the robot posture is not horizontal, the force sensor depends on the posture of the robot and the mass of the end effector due to the influence of gravity acceleration. Force is generated.
- Patent Document 1 As a gravity compensation means for compensating for the influence of gravity acceleration, for example, the method disclosed in Patent Document 1 can be cited.
- the force generated in the force sensor due to the influence of gravity corresponding to the posture is learned offline in advance.
- the work force is calculated by subtracting the learned force from the force generated during actual work.
- it is necessary to perform learning every time the work object changes. Further, learning must be performed before contact with an object, and gravity compensation cannot be performed when the robot continuously changes its posture.
- the external force applied to the movable part is the force generated when the work target and another object come into contact with each other.
- the present invention is not limited to this, and is generated when the end effector and the work target are in contact with each other. The same applies to the force to perform.
- the present invention has been made to solve the above-described problem, and an external force detection method capable of correctly detecting an external force applied to the movable portion even when the movable portion is suddenly accelerated or decelerated or when the posture is changed.
- the purpose is to provide.
- the acceleration detection means detects the acceleration of the fixed part in the actuator capable of displacing the movable part relative to the fixed part
- the position detection means detects the position of the movable part with respect to the fixed part.
- the position control means outputs a current command value based on the difference between the position detected by the position detection means and the reference position
- the acceleration compensation means outputs the acceleration detected by the acceleration detection means and the mass on the movable part side.
- the addition means adds the acceleration compensation value output from the acceleration compensation means to the current command value output from the position control means, and the constant current control means includes the actuator
- the current value of the drive current that drives the motor is matched with the current command value obtained by adding the acceleration compensation value by the adding means, and the external force detecting means obtains the acceleration compensation value from the current value of the drive current. Based on the result of the calculation, and detects an external force applied to the movable portion.
- FIG. 3A is a diagram showing the drive current and acceleration compensation value input to the subtractor in the external force detection unit
- FIG. 3B is a diagram showing the external force detected by the external force detection unit.
- FIG. 1 is a diagram showing a configuration example of a working device provided with an external force detection device (contact control device) according to Embodiment 1 of the present invention.
- the working device is a device that performs operations such as assembly, pressing, and polishing. As shown in FIG.
- the working device includes an actuator 1, a position detector (position detection means) 2, a position / velocity conversion unit 3, an acceleration detector (acceleration detection means) 4, a subtractor 5, a gain adjustment unit 6, A mass estimation unit (mass estimation unit) 7, an acceleration compensation unit (acceleration compensation unit) 8, an adder / subtracter (addition unit) 9, a constant current control unit (constant current control unit) 10, and an external force detection unit (external force detection unit) 11.
- the position detector 2, the position speed conversion unit 3, the acceleration detector 4, the subtractor 5, the gain adjustment unit 6, the mass estimation unit 7, the acceleration compensation unit 8, the adder / subtractor 9, the constant current control unit 10, and the external force detection unit 11 constitutes an external force detection device.
- the actuator 1 allows the movable portion 102 to be displaced in the linear motion direction or the rotational direction with respect to the fixed portion 101 by supplying a current to a coil placed in a magnetic field.
- This actuator 1 is attached to the tip of a robot (not shown) or the like, and is transferred as a whole and its posture is changed.
- An end effector 12 is attached to the movable portion 102.
- a gripper (hand) is attached as the end effector 12.
- the gripper is configured to be able to grip a work object. In the following, a case where the workpiece 50 is used as the work object is shown, but a part may be used.
- the position detector 2 is provided in the actuator 1 and detects the position (relative position) of the movable part 102 with respect to the fixed part 101.
- a signal (position signal) indicating the position detected by the position detector 2 is output to the position / speed converter 3 and the subtracter 5.
- the position / speed converter 3 differentiates the position detected by the position detector 2 and converts it into a speed. This speed indicates the speed (relative speed) of the movable part 102 with respect to the fixed part 101. A signal (speed signal) indicating the speed converted by the position speed conversion unit 3 is output to the adder / subtractor 9.
- the acceleration detector 4 is provided in the fixed unit 101 and detects the acceleration of the fixed unit 101. At this time, the acceleration detector 4 detects an acceleration ( ⁇ g + ⁇ 1) obtained by adding one or both of the gravitational acceleration ⁇ g and the moving acceleration ⁇ 1 of the fixed unit 101.
- FIG. 1 shows a case where the acceleration detector 4 detects acceleration ( ⁇ g + ⁇ 1).
- a signal (acceleration signal) indicating the acceleration detected by the acceleration detector 4 is output to the acceleration compensator 8.
- the subtracter 5 subtracts the position detected by the position detector 2 from the reference position Pr. A signal indicating the result of subtraction by the subtracter 5 is output to the gain adjustment unit 6.
- the gain adjustment unit 6 adjusts the value of compliance (reciprocal of spring constant: index of hardness and softness) in the actuator 1.
- the gain adjusting unit 6 includes a loop gain measuring unit 601, a gain intersection control unit 602, and a variable gain adjusting unit 603 as shown in FIGS.
- the loop gain measuring unit 601 measures the loop gain of the signal output from the subtracter 5. At this time, as shown in FIG. 2, the loop gain measuring unit 601 uses the signal output from the subtracter 5 to the frequency at which the loop gain is 1 (0 dB) by the oscillator 6011, that is, the frequency set at the gain intersection. Are added via an adder 6012. The signals before and after the addition of the sine wave by the loop gain measuring unit 601 are output to the gain intersection control unit 602.
- the gain intersection control unit 602 uses the comparator 6021 to compare the amplitude ratios of the signals before and after the addition of the sine wave by the loop gain measurement unit 601. A signal indicating the comparison result by the gain intersection control unit 602 is output to the variable gain adjustment unit 603.
- the variable gain adjustment unit 603 adjusts the gain of the signal output from the subtractor 5 so that the magnification of the amplitude ratio compared by the gain intersection control unit 602 is 1.
- the signal whose loop gain is adjusted by the variable gain adjusting unit 603 is output to the adder / subtractor 9 as a current command value Irp.
- a signal indicating the adjustment value of the loop gain by the variable gain adjustment unit 603 is output to the mass estimation unit 7.
- the subtractor 5 and the gain adjusting unit 6 constitute position control means (phase control loop) that outputs a current command value Irp based on the difference between the position detected by the position detector 2 and the reference position Pr.
- the mass estimation unit 7 estimates the mass on the movable unit 102 side from the adjustment value of the loop gain by the variable gain adjustment unit 603. That is, the mass estimation unit 7 uses the principle that a change in loop gain is proportional to a change in mass.
- the mass on the movable part 102 side is a mass (M1 + M2) obtained by adding the mass M1 of the movable part 102 and the mass M2 of the end effector 12 when the end effector 12 is not gripping the workpiece 50.
- the mass (M1 + M2 + M3) is obtained by adding the mass M1 of the movable portion 102, the mass M2 of the end effector 12, and the mass M3 of the workpiece 50.
- the mass estimation unit 7 estimates a mass (M1 + M2 + M3) obtained by adding the mass M1 of the movable unit 102, the mass M2 of the end effector 12, and the mass M3 of the workpiece 50.
- a signal indicating the mass estimated by the mass estimation unit 7 is output to the acceleration compensation unit 8.
- the acceleration compensation unit 8 outputs an acceleration compensation value Irc for correcting the disturbance torque.
- the acceleration compensation unit 8 includes a multiplier 801 and a coefficient multiplication unit 802.
- the multiplier 801 multiplies the acceleration detected by the acceleration detector 4 and the mass estimated by the mass estimation unit 7.
- a signal indicating the multiplication result by the multiplier 801 is output to the coefficient multiplier 802 and the external force detector 11.
- the coefficient multiplier 802 multiplies the multiplication result by the multiplier 801 by a coefficient (1 / Kt).
- Kt is a torque constant that represents the ratio between the thrust generated by the actuator 1 and the drive current Ia.
- a signal indicating the multiplication result by the coefficient multiplier 802 is output to the adder / subtractor 9 as an acceleration compensation value Irc.
- the adder / subtracter 9 adds the acceleration compensation value Irc output from the acceleration compensator 8 to the current command value Irp output from the gain adjuster 6 and subtracts the velocity signal output from the position / velocity converter 3. .
- a signal indicating the result of addition / subtraction by the adder / subtractor 9 is output to the constant current control unit 10 as a current command value Ir.
- the constant current control unit 10 controls the drive current Ia for driving the actuator 1 so as to coincide with the current command value Ir.
- the constant current control unit 10 includes a subtracter 1001, a drive driver 1002, and a current detector 1003.
- the subtracter 1001 subtracts the current value of the drive current Ia detected by the current detector 1003 from the current command value Ir output from the adder / subtractor 9. A signal indicating the result of subtraction by the subtracter 1001 is output to the drive driver 1002.
- the drive driver 1002 generates a drive current Ia corresponding to the subtraction result obtained by the subtracter 1001.
- the drive current Ia generated by the drive driver 1002 is output to the actuator 1 via the current detector 1003.
- the current detector 1003 detects the current value of the drive current Ia generated by the drive driver 1002.
- a signal indicating the current value detected by the current detector 1003 is output to the subtractor 1001.
- the external force detection unit 11 detects an external force (reaction force) F applied to the movable unit 102 based on the result of subtracting the acceleration compensation value Irc from the current value of the drive current Ia.
- the external force F applied to the movable portion 102 includes a force generated when the workpiece 50 gripped by the end effector 12 and another object come into contact with each other, or a force generated when the end effector 12 and the workpiece 50 contact each other. Is mentioned.
- the external force detector 11 includes a coefficient multiplier 1101, a subtractor 1102, and a coefficient multiplier 1103.
- the coefficient multiplication unit 1101 multiplies the multiplication result by the multiplier 801 of the acceleration compensation unit 8 by a coefficient (1 / Kt).
- a signal indicating the multiplication result by the coefficient multiplier 1101 is output to the subtractor 1102.
- the subtractor 1102 subtracts the multiplication result by the coefficient multiplication unit 1101 from the current value of the drive current Ia generated by the constant current control unit 10.
- a signal indicating the result of subtraction by the subtractor 1102 is output to the coefficient multiplier 1103.
- the coefficient multiplication unit 1103 obtains the external force F by multiplying the result of subtraction by the subtractor 1102 by a coefficient (Kt).
- the position detector 2 detects the position of the movable part 102 in the linear motion direction relative to the fixed part 101.
- the position / speed converter 3 differentiates the position detected by the position detector 2 and converts it into a speed. This speed indicates the speed of the movable part 102 with respect to the fixed part 101.
- the acceleration detector 4 detects the acceleration of the fixed portion 101 in the linear motion direction. In the following, it is assumed that the acceleration detector 4 detects an acceleration ( ⁇ 1 + ⁇ g) obtained by adding the movement acceleration ⁇ 1 in the linear motion direction component of the fixed portion 101 and the gravitational acceleration ⁇ g in the linear motion direction component of the fixed portion 101. .
- the position detected by the position detector 2 is compared with the reference position Pr by the subtractor 5, and the difference is one of the elements constituting the current command value Ir via the gain adjusting unit 6. It is given to the adder / subtractor 9 as Irp.
- the current command value Ir is composed of an acceleration compensation value Irc for correcting disturbance torque in addition to the current command value Irp, and is represented by the following equation (1).
- Ir Irp + Irc (1)
- the speed signal from the position / speed converter 3 is added to the minus output of the adder / subtractor 9 as a minor loop for stabilization.
- the gain adjustment unit 6 can change the compliance value in the actuator 1 by changing the loop gain of the position control loop.
- the current value becomes zero when there is no disturbance torque, but the current value also changes in proportion to the disturbance torque when there is disturbance torque.
- a reaction force received from the workpiece 50 during work a force generated by gravity and moving acceleration, a loss torque of a speed reducer, and the like can be considered.
- the actuator 1 since the actuator 1 is a linear actuator of a direct drive type, it does not have a speed reducer, and there is little need to consider loss torque. Therefore, the drive current Ia has a value proportional to the reaction force received from the workpiece 50 during work, gravity, and the force generated by the moving acceleration. In the following, it is assumed that the reaction force is a force generated when the workpiece 50 comes into contact with another object.
- the driving current of the actuator 1 is Ia
- the reaction force received from the workpiece 50 during work is F
- the movement acceleration in the linear motion direction component of the fixed portion 101 is ⁇ 1
- the gravity acceleration in the linear motion direction component of the fixed portion 101 is ⁇ g
- the mass of the movable portion 102 is M1
- the mass of the end effector 12 is M2
- the mass of the workpiece 50 is M3.
- Kt is a torque constant representing the ratio between the thrust generated by the actuator 1 and the drive current Ia.
- the item of 50 mass M3 is not included. That is, even when the robot suddenly moves and stops and movement acceleration occurs, or even when the robot continuously changes its posture and the gravitational acceleration changes, the movable part 102 of the actuator 1 does not shake and reacts with the reaction force F. It can be detected correctly.
- the compliance value can also be set freely.
- the reaction force F generated when the workpiece 50 comes into contact with another object can be known by monitoring the current command value Irp.
- the response of the current command value Irp to the reaction force F is generally not fast.
- the response of the drive current Ia to the reaction force F is relatively fast. Therefore, the reaction force F is detected not by directly monitoring the current command value Irp but by monitoring the drive current Ia.
- the drive current Ia can be expressed by the following equation (5).
- FIG. 3 shows a signal waveform when the movable unit 102 linearly moves downward as shown in FIG. 1 and the workpiece 50 comes into contact with another object (not shown).
- FIG. 3B shows the reaction force detected by the external force detector 11. F is shown.
- the operation of the robot is generally controlled by position control. Therefore, when the target position of the work object programmed in advance and the actual position are different due to a dimensional error or gripping position error of the work object, a large force is generated when the work object comes into contact with another object. There is a risk that the work object may be scratched or damaged.
- a force sensor is installed between the robot and the end effector, and when an excessive force is likely to be generated when the work object comes into contact, the detection result of the force sensor is fed back to the robot and an excessive force is generated. There is also a way to avoid it.
- the robot will not stop suddenly, so even if it decelerates suddenly from the time when the stop command is issued, it stops at a position that deviates from the contact position. The work object is crushed. Since the overshoot amount of the position is proportional to the moving speed, the speed at which the work object is brought closer to another object must be slowed down.
- the actuator 1 is attached to the tip of a robot or the like, and the external force detection device is used when the actuator 1 is suddenly moved or stopped and a movement acceleration is generated, or the posture of the actuator 1 is changed. Even when the gravitational acceleration changes, the reaction force F applied to the movable portion 102 can be detected correctly, and the compliance value can be arbitrarily changed. For this reason, the robot does not stop suddenly, but the work object is not crushed due to excessive position. Therefore, it is not necessary to extremely slow down the speed at which the work object approaches another object, and the work can be performed safely.
- the end effector is attached to the tip of the force sensor.
- a force proportional to the acceleration in the negative direction is generated in the force sensor due to the effect of the mass of the end effector. To do.
- the external force F can be detected correctly even when the actuator 1 is suddenly accelerated and decelerated, and the force is detected only at the time of contact. Absent.
- the posture that the robot can take when performing operations such as assembly, pressing, and polishing is not always constant, and is often changed according to the state of the operation. For example, in an operation of polishing while tracing a curved surface, the posture needs to be continuously changed.
- the force sensor since the end effector is attached to the tip of the force sensor, when the robot posture is not horizontal, the force sensor depends on the posture of the robot and the mass of the end effector due to the influence of gravity acceleration. Force is generated.
- the external force F can be detected correctly even when the attitude of the actuator 1 is changed and the gravitational acceleration is changed, so that the influence of gravity can be compensated in real time.
- the actuator 1 that allows the movable portion 102 to be displaced in the linear motion direction is shown.
- the present invention is not limited to this, and if the acceleration detector 4 can detect angular acceleration, the actuator 1 that can displace the movable portion 102 in the rotation direction can also be used.
- the acceleration detector 4 detects the acceleration of the fixed portion 101
- the position detector 2 detects the position of the movable portion 102 relative to the fixed portion 101
- position control means ( The subtractor 5 and the gain adjustment unit 6) output a current command value Irp based on the difference between the position detected by the position detector 2 and the reference position Pr
- the acceleration compensation unit 8 is detected by the acceleration detector 4.
- the acceleration compensation value Irc based on the multiplication result of the measured acceleration and the mass on the movable unit 102 side is output
- the adder / subtractor 9 adds the acceleration compensation value Irc to the current command value Irp
- the constant current control unit 10 outputs the drive current Ia.
- the external force detection unit 11 is configured to detect the external force F based on the result of subtracting the acceleration compensation value Irc from the current value of the drive current Ia. Even if the case is abruptly accelerated or decelerated or attitude is changed, it can be correctly detected the external force F applied to the movable portion 102.
- any component of the embodiment can be modified or any component of the embodiment can be omitted within the scope of the invention.
- the external force detection method according to the present invention is an external force detection method that can correctly detect an external force applied to the movable part even when the actuator is suddenly accelerated or decelerated or the posture is changed, and the like. Suitable for use.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Feedback Control In General (AREA)
Abstract
加速度検出器(4)は固定部(101)の加速度を検出し、位置検出器(2)は固定部(101)に対する可動部(102)の位置を検出し、位置制御手段(減算器(5)及びゲイン調整部(6))は、位置検出器(2)により検出された位置と基準位置Prとの差分に基づく電流指令値Irpを出力し、加速度補償部(8)は、加速度検出器(4)により検出された加速度と、可動部(102)、エンドエフェクタ(12)及びワーク(50)の合計質量との乗算結果に基づく加速度補償値Ircを出力し、加減算器(9)は電流指令値Irpに加速度補償値Ircを加算し、定電流制御部(10)は駆動電流Iaの電流値を電流指令値Irに一致させ、外力検出部(11)は、駆動電流Iaの電流値から加速度補償値Ircを減算した結果に基づいて外力Fを検出するように構成した。
Description
この発明は、アクチュエータ可動部に加わる外力を検出する外力検出方法に関する。
従来から、組み立て、押し付けや研磨等の作業を行う作業装置では、産業用ロボット(以下、ロボットと称す)等が多く用いられている。このロボットには、アームの先端にハンド等のエンドエフェクタが取付けられており、作業対象物(部品又はワーク)を把持することで作業を行う。
一方、ロボットの動作は、一般的に、位置制御によりコントロールされる。そのため、作業対象物の寸法誤差や把持位置誤差等により、予めプログラムされた作業対象物の目標位置と実際の位置とが異なる場合、作業対象物が他の物体と接触した際に大きな力(外力)が発生し、作業対象物に傷や破損が発生する恐れがある。
その対策として、作業対象物の位置誤差により発生する力を吸収する冶具(いわゆる「バッファ」)を別途設置する場合がある。しかしながら、このバッファは、作業対象物の形状や材料毎に要求される特性が異なるため、作業対象物の種類の数だけ異なるバッファを用意する必要があり、都度設計となる。そのため、コストが増大し、且つ装置が大型化するという課題がある。
それに対し、ロボットとエンドエフェクタとの間に力覚センサを設置し、作業対象物の接触時に過大な力が発生しそうになると力覚センサの検出結果をロボットにフィードバックし、過大な力が発生しないようにする方法もある。この場合には、バッファが不要となる。しかしながら、力覚センサは高価である。
また、力覚センサを用いた場合には、以下に述べる理由により、作業時間の短縮が難しいという課題がある。
すなわち、作業対象物が他の物体と接触する位置に誤差がある場合、接触時に過大な力が発生したことを検出して停止指令を出すが、可動部が大きくて重く且つ減速機構を有するロボットは急には止まれない。
また、接触時に発生する力は、慣性による衝撃力と接触時にロボットが発生している力との和となる。ここで、慣性による衝撃力は、作業対象物及びロボット可動部の質量と移動速度との積に比例する。しかしながら、ロボットは大きくて重い機構を有しているため、慣性による衝撃力を小さくするためには、接触直前の移動速度を遅くする必要がある。
また、接触時に発生する力は、慣性による衝撃力と接触時にロボットが発生している力との和となる。ここで、慣性による衝撃力は、作業対象物及びロボット可動部の質量と移動速度との積に比例する。しかしながら、ロボットは大きくて重い機構を有しているため、慣性による衝撃力を小さくするためには、接触直前の移動速度を遅くする必要がある。
また、過大な力が発生したことを検出して停止指令を出してもロボットは急には止まれないため、停止指令が出た時点から急激に減速しても接触位置からずれた位置で停止し、作業対象物を押し潰してしまう。そして、位置の行き過ぎ量は移動速度に比例するため、作業対象物を他の物体に近づける速度を遅くせざるを得ない。
上記の理由により、作業対象物が他の物体と接触する可能性のある領域では、ロボットの移動速度を十分落とす必要がある。しかしながら、サイクルタイムを短くするため、作業対象物を移送する速度は速くする必要がある。その結果、接触領域の近傍で速度を急激に落とすことになる。
しかしながら、エンドエフェクタは力覚センサの先に取付けられている。そのため、ロボットが急激に減速した場合には、エンドエフェクタの質量による影響で、力覚センサには負方向の加速度に比例した力が発生する。
ところが、上記加速度に比例した力と作業対象物の接触により発生する力とを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
ところが、上記加速度に比例した力と作業対象物の接触により発生する力とを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
また、力覚センサを用いた場合には、以下に述べる理由により、重力による影響をリアルタイムに補償し難いという課題がある。
すなわち、組み立て、押し付けや研磨等の作業を行う場合にロボットが取りうる姿勢は常に一定ではなく、作業の状態に応じて変化させる場合が多い。例えば、曲面をトレースしながら研磨を行う作業では、姿勢を連続して変化させる必要がある。
しかしながら、上記の通り、エンドエフェクタは力覚センサの先に取付けられているため、ロボットの姿勢が水平ではない場合、力覚センサには重力加速度による影響でロボットの姿勢とエンドエフェクタの質量に応じた力が発生する。
しかしながら、上記の通り、エンドエフェクタは力覚センサの先に取付けられているため、ロボットの姿勢が水平ではない場合、力覚センサには重力加速度による影響でロボットの姿勢とエンドエフェクタの質量に応じた力が発生する。
一方、重力加速度の影響を補償する重力補償手段として、例えば特許文献1に開示された方法が挙げられる。この特許文献1では、予めオフラインで姿勢に応じた重力の影響により力覚センサに発生する力を学習しておく。そして、実際の作業時に発生する力から学習した力を差し引くことで、作業力を算出している。しかしながら、この方法では、作業対象物が変わる度に学習を行う必要がある。また、学習は物体との接触前に行う必要があり、ロボットが連続して姿勢を変えるような場合には重力補償はできない。
なお上記では、可動部に加わる外力として、作業対象物と他の物体とが接触した際に発生する力を示したが、これに限らず、エンドエフェクタと作業対象物とが接触した際に発生する力についても同様である。
上記の通り、ロボットと力覚センサを用いて組み立て等の作業を行う場合、作業時間が長くなる。一方、作業時間を短くしようとすると作業対象物を傷付け、押し潰し、接触を正しく検出できなくなる。また、重力補償をリアルタイムで行うことも難しい。このように、力覚センサを用いた場合には、ロボットが急激に加減速した場合又は姿勢が変更した場合に、外力を正しく検出できないという課題がある。
この発明は、上記のような課題を解決するためになされたもので、可動部が急激に加減速された場合又は姿勢が変更された場合でも、可動部に加わる外力を正しく検出できる外力検出方法を提供することを目的としている。
この発明に係る外力検出方法は、加速度検出手段は、固定部に対して可動部を変位可能なアクチュエータにおける当該固定部の加速度を検出し、位置検出手段は、固定部に対する可動部の位置を検出し、位置制御手段は、位置検出手段により検出された位置と基準位置との差分に基づく電流指令値を出力し、加速度補償手段は、加速度検出手段により検出された加速度と、可動部側の質量との乗算結果に基づく加速度補償値を出力し、加算手段は、位置制御手段から出力された電流指令値に、加速度補償手段から出力された加速度補償値を加算し、定電流制御手段は、アクチュエータを駆動する駆動電流の電流値を、加算手段により加速度補償値が加算された電流指令値に一致させ、外力検出手段は、駆動電流の電流値から加速度補償値を減算した結果に基づいて、可動部に加わる外力を検出することを特徴とする。
この発明によれば、上記のように構成したので、アクチュエータが急激に加減速された場合又は姿勢が変更された場合でも、可動部に加わる外力を正しく検出できる。
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。
実施の形態1.
図1はこの発明の実施の形態1に係る外力検出装置(接触制御装置)を備えた作業装置の構成例を示す図である。
作業装置は、組み立て、押し付けや研磨等の作業を行う装置である。この作業装置は、図1に示すように、アクチュエータ1、位置検出器(位置検出手段)2、位置速度変換部3、加速度検出器(加速度検出手段)4、減算器5、ゲイン調整部6、質量推定部(質量推定手段)7、加速度補償部(加速度補償手段)8、加減算器(加算手段)9、定電流制御部(定電流制御手段)10及び外力検出部(外力検出手段)11を備えている。
なお、位置検出器2、位置速度変換部3、加速度検出器4、減算器5、ゲイン調整部6、質量推定部7、加速度補償部8、加減算器9、定電流制御部10及び外力検出部11は、外力検出装置を構成する。
実施の形態1.
図1はこの発明の実施の形態1に係る外力検出装置(接触制御装置)を備えた作業装置の構成例を示す図である。
作業装置は、組み立て、押し付けや研磨等の作業を行う装置である。この作業装置は、図1に示すように、アクチュエータ1、位置検出器(位置検出手段)2、位置速度変換部3、加速度検出器(加速度検出手段)4、減算器5、ゲイン調整部6、質量推定部(質量推定手段)7、加速度補償部(加速度補償手段)8、加減算器(加算手段)9、定電流制御部(定電流制御手段)10及び外力検出部(外力検出手段)11を備えている。
なお、位置検出器2、位置速度変換部3、加速度検出器4、減算器5、ゲイン調整部6、質量推定部7、加速度補償部8、加減算器9、定電流制御部10及び外力検出部11は、外力検出装置を構成する。
アクチュエータ1は、磁界に置かれたコイルに電流が供給されることで、固定部101に対して可動部102を直動方向又は回転方向に変位可能とする。このアクチュエータ1は、ロボット(不図示)等の先端に取付けられており、全体が移送され、また、姿勢が変更される。
また、可動部102には、エンドエフェクタ12が取付けられている。図1では、エンドエフェクタ12としてグリッパ(ハンド)が取付けられている。グリッパは、作業対象物を把持自在に構成されている。なお以下では、作業対象物として、ワーク50を用いた場合を示すが、部品を用いてもよい。
また、可動部102には、エンドエフェクタ12が取付けられている。図1では、エンドエフェクタ12としてグリッパ(ハンド)が取付けられている。グリッパは、作業対象物を把持自在に構成されている。なお以下では、作業対象物として、ワーク50を用いた場合を示すが、部品を用いてもよい。
位置検出器2は、アクチュエータ1に設けられ、固定部101に対する可動部102の位置(相対位置)を検出する。この位置検出器2により検出された位置を示す信号(位置信号)は、位置速度変換部3及び減算器5に出力される。
位置速度変換部3は、位置検出器2により検出された位置を微分して速度に変換する。この速度は、固定部101に対する可動部102の速度(相対速度)を示す。この位置速度変換部3により変換された速度を示す信号(速度信号)は、加減算器9に出力される。
加速度検出器4は、固定部101に設けられ、固定部101の加速度を検出する。この際、加速度検出器4は、固定部101の重力加速度αg及び移動加速度α1のうちの一方、又は両方が加算された加速度(αg+α1)を検出する。図1では、加速度検出器4が加速度(αg+α1)を検出する場合を示している。この加速度検出器4により検出された加速度を示す信号(加速度信号)は、加速度補償部8に出力される。
減算器5は、基準位置Prから位置検出器2により検出された位置を減算する。この減算器5による減算結果を示す信号は、ゲイン調整部6に出力される。
ゲイン調整部6は、アクチュエータ1におけるコンプライアンス(バネ定数の逆数:固さ柔らかさの指標)の値を調整する。このゲイン調整部6は、図1,2に示すように、ループゲイン測定部601、ゲイン交点制御部602及び可変ゲイン調整部603を有している。
ループゲイン測定部601は、減算器5から出力された信号のループゲインを測定する。この際、ループゲイン測定部601は、図2に示すように、減算器5から出力された信号に、発振器6011によりループゲインが1倍(0dB)となる周波数、すなわちゲイン交点に設定された周波数の正弦波を、加算器6012を介して加算する。このループゲイン測定部601による正弦波の加算前後の信号は、ゲイン交点制御部602に出力される。
ゲイン交点制御部602は、図2に示すように、比較器6021によりループゲイン測定部601による正弦波の加算前後の信号での振幅比を比較する。このゲイン交点制御部602による比較結果を示す信号は、可変ゲイン調整部603に出力される。
可変ゲイン調整部603は、ゲイン交点制御部602により比較された振幅比の倍率が1となるように、減算器5から出力された信号のゲインを調整する。この可変ゲイン調整部603によりループゲインが調整された信号は、加減算器9に電流指令値Irpとして出力される。また、可変ゲイン調整部603によるループゲインの調整値を示す信号は、質量推定部7に出力される。
なお、減算器5及びゲイン調整部6は、位置検出器2により検出された位置と基準位置Prとの差分に基づく電流指令値Irpを出力する位置制御手段(位相制御ループ)を構成する。
質量推定部7は、可変ゲイン調整部603によるループゲインの調整値から、可動部102側の質量を推定する。すなわち、質量推定部7は、ループゲインの変化と質量の変化とが比例する原理を利用する。ここで、可動部102側の質量とは、エンドエフェクタ12がワーク50を把持していない場合には、可動部102の質量M1とエンドエフェクタ12の質量M2とが加算された質量(M1+M2)であり、エンドエフェクタ12がワーク50を把持している場合には、可動部102の質量M1とエンドエフェクタ12の質量M2とワーク50の質量M3とが加算された質量(M1+M2+M3)である。なお図1では、質量推定部7が、可動部102の質量M1とエンドエフェクタ12の質量M2とワーク50の質量M3とが加算された質量(M1+M2+M3)を推定する場合を示している。この質量推定部7により推定された質量を示す信号は、加速度補償部8に出力される。
なお、ゲイン調整部6及び質量推定部7の動作原理は、下記の特許文献2と同様であり、その詳細については説明を省略する。
また上記では、質量推定部7により可動部102側の質量を推定する場合を示したが、これに限らず、他の方法を用いて可動部102側の質量を取得してもよい。
特開2010-182084号公報
また上記では、質量推定部7により可動部102側の質量を推定する場合を示したが、これに限らず、他の方法を用いて可動部102側の質量を取得してもよい。
加速度補償部8は、外乱トルクを補正するための加速度補償値Ircを出力する。この加速度補償部8は、乗算器801及び係数乗算部802を有している。
乗算器801は、加速度検出器4により検出された加速度と、質量推定部7により推定された質量とを乗算する。この乗算器801による乗算結果を示す信号は、係数乗算部802及び外力検出部11に出力される。
係数乗算部802は、乗算器801による乗算結果に係数(1/Kt)を乗算する。なお、Ktは、アクチュエータ1が発生する推力と駆動電流Iaとの比を表したトルク定数である。この係数乗算部802による乗算結果を示す信号は、加減算器9に加速度補償値Ircとして出力される。
係数乗算部802は、乗算器801による乗算結果に係数(1/Kt)を乗算する。なお、Ktは、アクチュエータ1が発生する推力と駆動電流Iaとの比を表したトルク定数である。この係数乗算部802による乗算結果を示す信号は、加減算器9に加速度補償値Ircとして出力される。
加減算器9は、ゲイン調整部6から出力された電流指令値Irpに対し、加速度補償部8から出力された加速度補償値Ircを加算し、位置速度変換部3から出力された速度信号を減算する。この加減算器9による加減算結果を示す信号は、定電流制御部10に電流指令値Irとして出力される。
定電流制御部10は、アクチュエータ1を駆動する駆動電流Iaを電流指令値Irに一致させるように制御する。この定電流制御部10は、減算器1001、駆動ドライバ1002及び電流検出器1003を有している。
減算器1001は、加減算器9から出力された電流指令値Irから、電流検出器1003により検出された駆動電流Iaの電流値を減算する。この減算器1001による減算結果を示す信号は、駆動ドライバ1002に出力される。
駆動ドライバ1002は、減算器1001による減算結果に応じた駆動電流Iaを発生する。この駆動ドライバ1002により発生された駆動電流Iaは、電流検出器1003を介してアクチュエータ1に出力される。
電流検出器1003は、駆動ドライバ1002により発生された駆動電流Iaの電流値を検出する。この電流検出器1003により検出された電流値を示す信号は、減算器1001に出力される。
駆動ドライバ1002は、減算器1001による減算結果に応じた駆動電流Iaを発生する。この駆動ドライバ1002により発生された駆動電流Iaは、電流検出器1003を介してアクチュエータ1に出力される。
電流検出器1003は、駆動ドライバ1002により発生された駆動電流Iaの電流値を検出する。この電流検出器1003により検出された電流値を示す信号は、減算器1001に出力される。
外力検出部11は、駆動電流Iaの電流値から加速度補償値Ircを減算した結果に基づいて、可動部102に加わる外力(反力)Fを検出する。なお、可動部102に加わる外力Fとしては、エンドエフェクタ12が把持したワーク50と他の物体とが接触した際に発生する力や、エンドエフェクタ12とワーク50とが接触した際に発生する力が挙げられる。この外力検出部11は、係数乗算部1101、減算器1102及び係数乗算部1103を有している。
係数乗算部1101は、加速度補償部8の乗算器801による乗算結果に係数(1/Kt)を乗算する。この係数乗算部1101による乗算結果を示す信号は、減算器1102に出力される。
減算器1102は、定電流制御部10により発生された駆動電流Iaの電流値から、係数乗算部1101による乗算結果を減算する。この減算器1102による減算結果を示す信号は、係数乗算部1103に出力される。
係数乗算部1103は、減算器1102による減算結果に係数(Kt)を乗算することで、外力Fを得る。
減算器1102は、定電流制御部10により発生された駆動電流Iaの電流値から、係数乗算部1101による乗算結果を減算する。この減算器1102による減算結果を示す信号は、係数乗算部1103に出力される。
係数乗算部1103は、減算器1102による減算結果に係数(Kt)を乗算することで、外力Fを得る。
次に、実施の形態1に係る外力検出装置の動作原理について説明する。なお以下では、アクチュエータ1として、発生した推力がワーク50に直接伝わるダイレクトドライブ形式のリニアアクチュエータを用い、固定部101に対して可動部102を直動させるものとする。このアクチュエータ1は、定電流制御部10が電流指令値Irに応じて発生した駆動電流Iaにより駆動する。
一方、位置検出器2は、固定部101に対する可動部102の直動方向における位置を検出する。
また、位置速度変換部3は、位置検出器2により検出された位置を微分して速度に変換する。この速度は、固定部101に対する可動部102の速度を示す。
また、位置速度変換部3は、位置検出器2により検出された位置を微分して速度に変換する。この速度は、固定部101に対する可動部102の速度を示す。
また、加速度検出器4は、固定部101の直動方向における加速度を検出する。以下では、加速度検出器4は、固定部101の直動方向成分における移動加速度α1と、固定部101の直動方向成分における重力加速度αgとが加算された加速度(α1+αg)を検出するものとする。
また、位置検出器2により検出された位置は、減算器5で基準位置Prと比較され、その差分がゲイン調整部6を介して電流指令値Irを構成する要素の一つである電流指令値Irpとして加減算器9に与えられる。
電流指令値Irは、電流指令値Irpの他、外乱トルクを補正するための加速度補償値Ircで構成され、次式(1)で表される。
Ir=Irp+Irc (1)
Ir=Irp+Irc (1)
なお、位置を単純にフィードバックすると制御系が不安定となる。そのため、実際には、位置速度変換部3からの速度信号をマイナーループとして加減算器9のマイナス出力に加えて安定化を行っているが、以下では省略する。
また、ゲイン調整部6では、位置制御ループのループゲインを変えることで、アクチュエータ1におけるコンプライアンスの値を変化させることができる。
ここで、駆動電流Iaに着目すると、外乱トルクがない場合には電流値は零になるが、外乱トルクがある場合にはそれに比例して電流値も変化する。
一般的な外乱トルクとしては、作業時にワーク50から受ける反力、重力及び移動加速度により発生する力、減速器のロストルク等が考えられる。ここで、アクチュエータ1はダイレクトドライブ形式のリニアアクチュエータであるため、減速器は持たず、ロストルクは考慮する必要は少ない。したがって、駆動電流Iaは、作業時にワーク50から受ける反力、重力、移動加速度により発生する力に比例した値となる。なお以下では、反力は、ワーク50が他の物体に接触した際に発生する力であるとする。
一般的な外乱トルクとしては、作業時にワーク50から受ける反力、重力及び移動加速度により発生する力、減速器のロストルク等が考えられる。ここで、アクチュエータ1はダイレクトドライブ形式のリニアアクチュエータであるため、減速器は持たず、ロストルクは考慮する必要は少ない。したがって、駆動電流Iaは、作業時にワーク50から受ける反力、重力、移動加速度により発生する力に比例した値となる。なお以下では、反力は、ワーク50が他の物体に接触した際に発生する力であるとする。
ここで、アクチュエータ1の駆動電流をIa、作業時にワーク50から受ける反力をF、固定部101の直動方向成分における移動加速度をα1、固定部101の直動方向成分における重力加速度をαg、可動部102の質量をM1,エンドエフェクタ12の質量をM2、ワーク50の質量をM3とする。この場合、次式(2)の関係が成り立つ。
F+(α1+αg)・(M1+M2+M3)
=Kt・Ir=Kt・(Irp+Irc) (2)
なお、Ktはアクチュエータ1が発生する推力と駆動電流Iaとの比を表したトルク定数である。
F+(α1+αg)・(M1+M2+M3)
=Kt・Ir=Kt・(Irp+Irc) (2)
なお、Ktはアクチュエータ1が発生する推力と駆動電流Iaとの比を表したトルク定数である。
また、式(2)において外乱トルクを補正するための加速度補償値Ircを次式(3)のように設定する。
(α1+αg)・(M1+M2+M3)=Kt・Irc (3)
(α1+αg)・(M1+M2+M3)=Kt・Irc (3)
式(3)のように加速度補償値Ircを設定した場合、式(2)からα1、αg、M1、M2、M3の項が消え、次式(4)のように整理される。
F=Kt・Irp (4)
F=Kt・Irp (4)
このように、外乱トルクを補正するための加速度補償値Ircを式(3)のように設定すると、作業時にワーク50から受ける反力Fと電流指令値Irpは、比例関係になることがわかる。
これは、作業時にワーク50から受ける力が零、つまりワーク50が他の物体と接触していない場合、基準位置Prと実際の位置の差分に基づく電流指令値Irpも零、つまり位置が変位しないことを意味している。
そして、ワーク50が他の物体と接触した際に生じる反力Fは、電流指令値Irpを監視することで知ることができる。
そして、ワーク50が他の物体と接触した際に生じる反力Fは、電流指令値Irpを監視することで知ることができる。
そして、式(4)には、固定部101の直動方向成分における移動加速度α1、固定部101の直動方向成分における重力加速度αg、可動部102の質量M1、エンドエフェクタ12の質量M2、ワーク50の質量M3の項目が含まれていない。
つまり、ロボットが急激に移動、停止を行い移動加速度が発生した場合や、ロボットが連続して姿勢を変更し重力加速度が変化した場合でも、アクチュエータ1の可動部102はゆれることなく反力Fを正しく検出できる。
そして、コンプライアンスの値も自由に設定できる。
つまり、ロボットが急激に移動、停止を行い移動加速度が発生した場合や、ロボットが連続して姿勢を変更し重力加速度が変化した場合でも、アクチュエータ1の可動部102はゆれることなく反力Fを正しく検出できる。
そして、コンプライアンスの値も自由に設定できる。
なお、上述したように、ワーク50が他の物体と接触して発生する反力Fは、電流指令値Irpを監視することで知ることができる。
しかしながら、位置制御ループにおいて、反力Fに対する電流指令値Irpの応答は一般的に速くない。一方、反力Fに対する駆動電流Iaの応答は比較的早い。そこで、電流指令値Irpを直接監視するのではなく、駆動電流Iaを監視することで反力Fの検出を行う。
しかしながら、位置制御ループにおいて、反力Fに対する電流指令値Irpの応答は一般的に速くない。一方、反力Fに対する駆動電流Iaの応答は比較的早い。そこで、電流指令値Irpを直接監視するのではなく、駆動電流Iaを監視することで反力Fの検出を行う。
ここで、式(2)は以下の通りである。
F+(α1+αg)・(M1+M2+M3)
=Kt・Ir=Kt・(Irp+Irc) (2)
F+(α1+αg)・(M1+M2+M3)
=Kt・Ir=Kt・(Irp+Irc) (2)
一方、駆動電流Iaは次式(5)で表せる。
Ia=Ir=Irp+Irc (5)
Ia=Ir=Irp+Irc (5)
よって、式(2),(5)から下式(6)が得られる。
F+(α1+αg)・(M1+M2+M3)=Kt・Ia (6)
F+(α1+αg)・(M1+M2+M3)=Kt・Ia (6)
そして、式(6)の両辺から、式(3)の左辺である((α1+αg)・(M1+M2+M3))を減算して整理すると、下式(7)が得られる。
F=Kt・(Ia-(α1+αg)・(M1+M2+M3)/Kt) (7)
F=Kt・(Ia-(α1+αg)・(M1+M2+M3)/Kt) (7)
この式(7)に示されるように、駆動電流Iaから加速度補償値(α1+αg)・(M1+M2+M3)/Ktを差し引いてトルク定数Ktをかけることで、反力Fに比例して応答が速いIaから反力Fを求めることができる。
図3では、可動部102が図1に示すように下方向に直動してワーク50が他の物体(不図示)に接触した場合での信号波形を示している。なお、図3Aでは減算器1102に入力された駆動電流Ia及び加速度補償値Irc(=((α1+αg)・(M1+M2+M3))/Kt)を示し、図3Bでは外力検出部11により検出された反力Fを示している。この図3に示すように、駆動電流Iaから加速度補償値Irc(=((α1+αg)・(M1+M2+M3))/Kt)を減算して係数(Kt)を乗算することで、反力Fを正確に検出できる。
次に、実施の形態1に係る外力検出装置による効果について説明する。
上記の通り、ロボットの動作は、一般的に、位置制御によりコントロールされる。そのため、作業対象物の寸法誤差や把持位置誤差等により、予めプログラムされた作業対象物の目標位置と実際の位置が異なる場合、作業対象物が他の物体と接触した際に大きな力が発生し、作業対象物に傷や破損が発生する恐れがある。
上記の通り、ロボットの動作は、一般的に、位置制御によりコントロールされる。そのため、作業対象物の寸法誤差や把持位置誤差等により、予めプログラムされた作業対象物の目標位置と実際の位置が異なる場合、作業対象物が他の物体と接触した際に大きな力が発生し、作業対象物に傷や破損が発生する恐れがある。
その対策として、ロボットとエンドエフェクタとの間に力覚センサを設置し、作業対象物の接触時に過大な力が発生しそうになると力覚センサの検出結果をロボットにフィードバックし、過大な力が発生しないようにする方法もある。
しかしながら、過大な力が発生したことを検出して停止指令を出してもロボットは急には止まれないため、停止指令が出た時点から急激に減速しても接触位置からずれた位置で停止してしまい、作業対象物を押し潰してしまう。そして、位置の行き過ぎ量は移動速度に比例するため、作業対象物を他の物体に近付ける速度を遅くせざるを得ない。
上記の理由により、作業対象物が他の物体と接触する可能性のある領域では、ロボットの移動速度を十分落とす必要がある。しかしながら、サイクルタイムを短くするため、作業対象物を移送する速度は速くする必要がある。その結果、接触領域の近傍で速度を急激に落とすことになる。
一方、実施の形態1では、ロボット等の先端にアクチュエータ1を取付け、また、外力検出装置は、アクチュエータ1が急激に移動又は停止されて移動加速度が発生した場合や、アクチュエータ1の姿勢が変更されて重力加速度が変化した場合でも、可動部102に加わる反力Fを正しく検出でき、また、コンプライアンス値を任意に変えられる。そのため、ロボットが急に止まれない点が同じだが、位置の行き過ぎにより作業対象物を押し潰してしまうことはない。よって、作業対象物を他の物体に近づける速度を極端に遅くする必要がなく、また、安全に作業できる。
また、従来では、エンドエフェクタは力覚センサの先に取付けられており、ロボットが急激に減速した場合、エンドエフェクタの質量による影響で、力覚センサには負方向の加速度に比例した力が発生する。
ところが、上記加速度に比例した力と作業対象物の接触により発生する力とを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
ところが、上記加速度に比例した力と作業対象物の接触により発生する力とを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
一方、実施の形態1に係る外力検出装置では、アクチュエータ1が急激に加減速された場合でも正しく外力Fを検出でき、接触時にのみ力を検出するため、アクチュエータ1の減速時間を長くする必要はない。
また、力覚センサを用いた場合には、重力による影響をリアルタイムに補償し難いという課題もある。
すなわち、組み立て、押し付けや研磨等の作業を行う場合にロボットが取りうる姿勢は常に一定ではなく、作業の状態に応じて変化させる場合が多い。例えば、曲面をトレースしながら研磨を行う作業では、姿勢を連続して変化させる必要がある。
しかしながら、上記の通り、エンドエフェクタは力覚センサの先に取付けられているため、ロボットの姿勢が水平ではない場合、力覚センサには重力加速度による影響でロボットの姿勢とエンドエフェクタの質量に応じた力が発生する。
すなわち、組み立て、押し付けや研磨等の作業を行う場合にロボットが取りうる姿勢は常に一定ではなく、作業の状態に応じて変化させる場合が多い。例えば、曲面をトレースしながら研磨を行う作業では、姿勢を連続して変化させる必要がある。
しかしながら、上記の通り、エンドエフェクタは力覚センサの先に取付けられているため、ロボットの姿勢が水平ではない場合、力覚センサには重力加速度による影響でロボットの姿勢とエンドエフェクタの質量に応じた力が発生する。
一方、実施の形態1に係る外力検出装置では、アクチュエータ1の姿勢が変更されて重力加速度が変化した場合でも外力Fを正しく検出できるため、重力による影響をリアルタイムに補償できる。
なお上記では、可動部102を直動方向に変位可能とするアクチュエータ1を用いた場合を示した。しかしながら、これに限らず、加速度検出器4が角加速度を検出可能であれば、可動部102を回転方向に変位可能とするアクチュエータ1を用いることもできる。
以上のように、この実施の形態1によれば、加速度検出器4は固定部101の加速度を検出し、位置検出器2は固定部101に対する可動部102の位置を検出し、位置制御手段(減算器5及びゲイン調整部6)は、位置検出器2により検出された位置と基準位置Prとの差分に基づく電流指令値Irpを出力し、加速度補償部8は、加速度検出器4により検出された加速度と、可動部102側の質量との乗算結果に基づく加速度補償値Ircを出力し、加減算器9は電流指令値Irpに加速度補償値Ircを加算し、定電流制御部10は駆動電流Iaの電流値を電流指令値Irに一致させ、外力検出部11は、駆動電流Iaの電流値から加速度補償値Ircを減算した結果に基づいて外力Fを検出するように構成したので、可動部102が急激に加減速された場合又は姿勢が変更された場合でも、可動部102に加わる外力Fを正しく検出できる。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
この発明に係る外力検出方法は、アクチュエータが急激に加減速された場合又は姿勢が変更された場合でも、可動部に加わる外力を正しく検出でき、可動部に加わる外力を検出する外力検出方法等に用いるのに適している。
1 アクチュエータ
2 位置検出器(位置検出手段)
3 位置速度変換部
4 加速度検出器(加速度検出手段)
5 減算器
6 ゲイン調整部
7 質量推定部
8 加速度補償部(加速度補償手段)
9 加減算器(加算手段)
10 定電流制御部(定電流制御手段)
11 外力検出部(外力検出手段)
12 エンドエフェクタ
50 ワーク
101 固定部
102 可動部
601 ループゲイン測定部
602 ゲイン交点制御部
603 可変ゲイン調整部
801 乗算器
802 係数乗算部
1001 減算器
1002 駆動ドライバ
1003 電流検出器
1101 係数乗算部
1102 減算器
1103 係数乗算部
6011 発振器
6012 加算器
6021 比較器
2 位置検出器(位置検出手段)
3 位置速度変換部
4 加速度検出器(加速度検出手段)
5 減算器
6 ゲイン調整部
7 質量推定部
8 加速度補償部(加速度補償手段)
9 加減算器(加算手段)
10 定電流制御部(定電流制御手段)
11 外力検出部(外力検出手段)
12 エンドエフェクタ
50 ワーク
101 固定部
102 可動部
601 ループゲイン測定部
602 ゲイン交点制御部
603 可変ゲイン調整部
801 乗算器
802 係数乗算部
1001 減算器
1002 駆動ドライバ
1003 電流検出器
1101 係数乗算部
1102 減算器
1103 係数乗算部
6011 発振器
6012 加算器
6021 比較器
Claims (4)
- 加速度検出手段は、固定部に対して可動部を変位可能なアクチュエータにおける当該固定部の加速度を検出し、
位置検出手段は、前記固定部に対する前記可動部の位置を検出し、
位置制御手段は、前記位置検出手段により検出された位置と基準位置との差分に基づく電流指令値を出力し、
加速度補償手段は、前記加速度検出手段により検出された加速度と、前記可動部側の質量との乗算結果に基づく加速度補償値を出力し、
加算手段は、前記位置制御手段から出力された電流指令値に、前記加速度補償手段から出力された加速度補償値を加算し、
定電流制御手段は、前記アクチュエータを駆動する駆動電流の電流値を、前記加算手段により加速度補償値が加算された電流指令値に一致させ、
外力検出手段は、前記駆動電流の電流値から前記加速度補償値を減算した結果に基づいて、前記可動部に加わる外力を検出する
ことを特徴とする外力検出方法。 - 前記加速度検出手段は、前記固定部の重力加速度及び移動加速度のうちの一方、又は両方が加算された加速度を検出する
ことを特徴とする請求項1記載の外力検出方法。 - 前記アクチュエータは、ダイレクトドライブ型のリニアアクチュエータである
ことを特徴とする請求項1記載の外力検出方法。 - 質量推定手段は、前記可動部側の質量を推定し、
前記加速度補償手段は、前記加速度検出手段により検出された加速度と、前記質量推定手段により推定された質量との乗算結果に基づく加速度補償値を出力する
ことを特徴とする請求項1記載の外力検出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201780064853.3A CN109844477B (zh) | 2016-10-28 | 2017-09-12 | 外力检测方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016211596A JP6711536B2 (ja) | 2016-10-28 | 2016-10-28 | 外力検出方法 |
JP2016-211596 | 2016-10-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018079107A1 true WO2018079107A1 (ja) | 2018-05-03 |
Family
ID=62024729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/032864 WO2018079107A1 (ja) | 2016-10-28 | 2017-09-12 | 外力検出方法 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6711536B2 (ja) |
CN (1) | CN109844477B (ja) |
WO (1) | WO2018079107A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113157547B (zh) * | 2021-05-27 | 2024-01-02 | 江苏安纳金机械有限公司 | 一种采用双检测功能的笔记本电脑触控板性能测试装置和方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003159674A (ja) * | 2001-11-21 | 2003-06-03 | Sony Corp | ロボット装置、ロボット装置の外力検出方法及びロボット装置の外力検出プログラム、並びにロボット装置の外力検出のためのキャリブレーション方法及びロボット装置の外力検出のためのキャリブレーションプログラム |
JP2007141189A (ja) * | 2005-10-18 | 2007-06-07 | Fanuc Ltd | 加速度センサを用いた制御装置及び調整装置 |
US20090003146A1 (en) * | 2007-06-29 | 2009-01-01 | Seagate Technology Llc | Servo gain adjustment based on bias force error |
JP2009045687A (ja) * | 2007-08-20 | 2009-03-05 | Ntn Corp | 把持装置の把持制御装置 |
JP2009271783A (ja) * | 2008-05-08 | 2009-11-19 | Yamatake Corp | 精密位置決め装置 |
JP2010182084A (ja) * | 2009-02-05 | 2010-08-19 | Yamatake Corp | パラメータ推定装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1418026A1 (en) * | 1995-09-11 | 2004-05-12 | Kabushiki Kaisha Yaskawa Denki | Control apparatus for robot |
CN100584547C (zh) * | 2003-07-29 | 2010-01-27 | 松下电器产业株式会社 | 控制机械手的方法 |
CN202011020U (zh) * | 2008-05-21 | 2011-10-19 | Abb技术公司 | 用于根据运动控制参数集来控制工业机器人的*** |
JP4955791B2 (ja) * | 2010-04-20 | 2012-06-20 | ファナック株式会社 | ロボットシステム |
JP6083145B2 (ja) * | 2012-07-31 | 2017-02-22 | セイコーエプソン株式会社 | ロボットの制御装置、およびロボット |
-
2016
- 2016-10-28 JP JP2016211596A patent/JP6711536B2/ja active Active
-
2017
- 2017-09-12 CN CN201780064853.3A patent/CN109844477B/zh active Active
- 2017-09-12 WO PCT/JP2017/032864 patent/WO2018079107A1/ja active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003159674A (ja) * | 2001-11-21 | 2003-06-03 | Sony Corp | ロボット装置、ロボット装置の外力検出方法及びロボット装置の外力検出プログラム、並びにロボット装置の外力検出のためのキャリブレーション方法及びロボット装置の外力検出のためのキャリブレーションプログラム |
JP2007141189A (ja) * | 2005-10-18 | 2007-06-07 | Fanuc Ltd | 加速度センサを用いた制御装置及び調整装置 |
US20090003146A1 (en) * | 2007-06-29 | 2009-01-01 | Seagate Technology Llc | Servo gain adjustment based on bias force error |
JP2009045687A (ja) * | 2007-08-20 | 2009-03-05 | Ntn Corp | 把持装置の把持制御装置 |
JP2009271783A (ja) * | 2008-05-08 | 2009-11-19 | Yamatake Corp | 精密位置決め装置 |
JP2010182084A (ja) * | 2009-02-05 | 2010-08-19 | Yamatake Corp | パラメータ推定装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2018072135A (ja) | 2018-05-10 |
CN109844477B (zh) | 2020-10-30 |
CN109844477A (zh) | 2019-06-04 |
JP6711536B2 (ja) | 2020-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5327722B2 (ja) | ロボットの負荷推定装置及び負荷推定方法 | |
EP0881044B1 (en) | Robot controller | |
US20190275678A1 (en) | Robot control device, robot, robot system, and robot control method | |
US10022866B2 (en) | Robot control device | |
US20140156077A1 (en) | Robot, carriage device, and control method using inertia sensor | |
JP5890473B2 (ja) | モータを制御するモータ制御装置 | |
JP2009090462A (ja) | ロボットの制御方法および制御装置 | |
JP6044511B2 (ja) | ロボットの制御方法及びロボットシステム | |
Stolt et al. | Robotic force estimation using dithering to decrease the low velocity friction uncertainties | |
WO2016067901A1 (ja) | 接触制御装置 | |
US9876448B2 (en) | Position control apparatus | |
WO2018079107A1 (ja) | 外力検出方法 | |
US20230063392A1 (en) | Robotic device | |
JP2017019057A (ja) | ロボット制御装置、ロボットおよびロボットシステム | |
JPWO2008093486A1 (ja) | 慣性モーメント同定装置とその同定方法、ならびにその同定装置を備えたモータ制御装置 | |
JP6923273B2 (ja) | はんだ付け装置 | |
JP7002928B2 (ja) | 位置決め装置 | |
JP6912149B2 (ja) | 接着装置 | |
JP2019188517A (ja) | 曲面トレース装置 | |
JP2019188519A (ja) | ピン挿入装置 | |
JP2017019058A (ja) | ロボット制御装置、ロボットおよびロボットシステム | |
JP2019188518A (ja) | 硬度計測装置 | |
JP2019025600A (ja) | 締め付け装置及び締め付け方法 | |
JP2019188520A (ja) | 再現装置 | |
JP2019115951A (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: 17864496 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17864496 Country of ref document: EP Kind code of ref document: A1 |