WO2022054947A1 - ロボット装置およびその制御方法 - Google Patents
ロボット装置およびその制御方法 Download PDFInfo
- Publication number
- WO2022054947A1 WO2022054947A1 PCT/JP2021/033571 JP2021033571W WO2022054947A1 WO 2022054947 A1 WO2022054947 A1 WO 2022054947A1 JP 2021033571 W JP2021033571 W JP 2021033571W WO 2022054947 A1 WO2022054947 A1 WO 2022054947A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- target
- hand
- pressure
- robot device
- robot
- 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
Definitions
- the present disclosure relates to a robot device including at least one artificial muscle that operates by receiving a fluid supply and a control method thereof.
- a robot that guides a robot with an end effector attached to the tip by a teaching device, teaches the end effector or the work involving contact between the gripping object gripped by the end effector and the work object, and reproduces the taught work.
- the control device of the above is known (see, for example, Patent Document 1).
- This control device guides the robot by position control when the work is taught and the end effector or the gripping object is not in contact with the work object. Further, the control device determines whether or not the end effector or the gripping object and the work object are in contact with each other based on the detection value of the force sensor provided between the robot tip and the end effector, and the detection value of the force sensor.
- the control method of the robot is switched from position control to force control, and the robot is guided by force control.
- the work target is determined from the end effector or the gripping object depending on the aspect of the position control. Excessive force may be applied to the object. It is also conceivable that the moving speed of the end effector or the like may be reduced when the end effector or the gripping object approaches the work object to some extent. Determining whether or not the object has come into contact with the object causes a deterioration in efficiency due to a long working time.
- the main purpose of the present disclosure is to bring the hand of a robot device including at least one artificial muscle that operates by receiving a fluid supply into contact with the subject properly and promptly.
- the robot apparatus of the present disclosure is a robot apparatus including a robot body including at least one artificial muscle that operates by receiving a supply of fluid, and a fluid pressure adjusting device that adjusts the pressure of the fluid supplied to the artificial muscle. Therefore, after the contact between the hand and the target, a predetermined pressing force is applied from the hand to the target, and the target reaching position of the hand is set before the hand and the target come into contact with each other.
- the target pressure of the fluid supplied to the artificial muscle is set based on the difference between the target position forming the trajectory from the position of the hand before contacting the target to the target arrival position and the current position of the hand.
- the fluid pressure adjusting device is used so that the pressure of the fluid supplied to the artificial muscle becomes the target pressure from before the hand comes into contact with the target until the target position coincides with the target reaching position. It includes a control device to control.
- the hand of the robot body and the target are connected via a virtual spring and a damper, and the hand is pulled from the current position to the target by the tensile force generated by the virtual spring and the damper.
- the tensile force due to the virtual spring and damper can be expressed as the sum of the proportional term and the velocity term obtained by multiplying the difference between the target position and the current position of the hand by the gain.
- the speed of the hand with respect to the target becomes zero, so that the pressing force applied to the target after the contact with the target by the hand being pulled by a virtual spring and damper is after the contact.
- the target arrival position of the hand to which a predetermined pressing force is applied from the hand to the target after the contact between the hand and the target is set at least before the hand and the target come into contact with each other.
- the target pressure of the fluid supplied to the artificial muscle is set based on the difference between the target position forming the trajectory from the position of the hand before contacting the target to the target arrival position and the current position of the hand.
- the fluid pressure adjusting device is controlled so that the pressure of the fluid supplied to the artificial muscle becomes the target pressure from before the contact between the hand and the target until the target position coincides with the target arrival position.
- the artificial muscle is operated with high accuracy and responsiveness to the request. It becomes possible. As a result, it becomes possible to properly and promptly bring the hand of the robot device including at least one artificial muscle that operates by receiving the supply of the fluid into contact with the target.
- the hand of the robot body may be a part of the robot device (hand part or the like) or an object gripped by the part, and the target is the object or the mounting surface of the object or the like. It may be.
- the control method of the robot apparatus of the present disclosure includes a robot body including at least one artificial muscle that operates by receiving a fluid supply, and a fluid pressure adjusting device that adjusts the pressure of the fluid supplied to the artificial muscle.
- the hand and the target set a target arrival position of the hand to which a predetermined pressing force is applied from the hand to the target after the hand of the robot body comes into contact with the target. It is set before contact and is supplied to the artificial muscle based on the difference between the target position forming the trajectory from the position of the hand before contacting the target to the target arrival position and the current position of the hand.
- the target pressure of the fluid is set, and the pressure of the fluid supplied to the artificial muscle is the target pressure from before the hand and the target come into contact with each other until the target position coincides with the target arrival position.
- the fluid pressure adjusting device is controlled so as to be.
- FIG. 1 is a schematic configuration diagram showing the robot device 1 of the present disclosure
- FIG. 2 is an enlarged view showing the robot device 1.
- the robot device 1 shown in these drawings includes a robot arm (robot body) 2, a liquid supply device 10, and a control device 100 that controls the entire device.
- the robot arm 2 includes a plurality of (three in this embodiment) joints (pin joints) J1, J2, J3, a plurality of (three in this embodiment) arms (links) 3, and joints J1,
- a plurality of hydraulic actuators (fluid actuators) M as artificial muscles provided for each of J2 and J3, for example, an even number (four in this embodiment), and a grip portion attached to the hand of the arm 3 on the tip side.
- the hand unit 4 is controlled by the control device 100 so as to grip the target object (hereinafter, referred to as “grasping target”). Further, the liquid supply device 10 is controlled by the control device 100 to supply and discharge hydraulic oil (working fluid) as a liquid to each hydraulic actuator M. As a result, the robot arm 2 can be driven hydraulically (hydraulic pressure) to move the hand portion 4 to a desired position.
- each hydraulic actuator M of the robot arm 2 is a so-called Macchiben type artificial muscle including a tube T that expands and contracts by the pressure of hydraulic oil and a braided sleeve S that covers the tube T. be.
- the tube T is formed in a cylindrical shape by an elastic material such as a rubber material having high oil resistance, and both ends of the tube T are sealed by a sealing member C.
- a hydraulic oil inlet / outlet IO is formed on the sealing member C on the base end side (liquid supply device 10 side, lower end side in FIG. 2) of the tube T.
- the braided sleeve S is formed in a cylindrical shape by knitting a plurality of cords oriented in a predetermined direction so as to intersect each other, and is retractable in the axial direction and the radial direction.
- a fiber cord, a high-strength fiber, a metal cord composed of ultrafine filaments, or the like can be adopted.
- the arm 3 on the most proximal end side (most liquid supply device 10 side) is rotatable by the support member 5 as a link via the joint J1. Be supported. Further, the two arms 3 are rotatably connected to each other via the joint J2 or J3. Further, the connecting member 6 is fixed to the tip ends (ends on the hand side) of the two arms 3 on the liquid supply device 10 side. As shown in the figure, the support member 5 rotatably supports the sealing member C on the proximal end side of the plurality (four) hydraulic actuators M corresponding to the joint J1 on the distal end side.
- each connecting member 6 rotatably supports the sealing member C on the tip end side (hand side) of the plurality (four) hydraulic actuators M corresponding to the joints J1 or J2 located on the proximal end side. .. Further, each connecting member 6 rotatably supports the sealing member C on the proximal end side of the plurality (four) hydraulic actuators M corresponding to the joints J2 or J3 located on the distal end side.
- the support member 5 rotatably supports the sealing member C on the proximal end side of the two hydraulic actuators M corresponding to the joint J1 via the first connecting shaft.
- the connecting member 6 of the arm 3 on the most proximal end side rotatably supports the sealing member C on the tip end side of the two hydraulic actuators M corresponding to the joint J1 via the second connecting shaft. ..
- the support member 5 can rotate the sealing member C on the proximal end side of the remaining two hydraulic actuators M corresponding to the joint J1 via the third connecting shaft extending in parallel with the first connecting shaft. Support.
- the connecting member 6 of the arm 3 on the most proximal end side extends the sealing member C on the tip end side of the remaining two hydraulic actuators M corresponding to the joint J1 in parallel with the second connecting shaft. It is rotatably supported via a connecting shaft.
- the connecting member 6 of the two arms 3 connected to each other via the joint J2 or J3 also has a plurality (four) corresponding to the joint J2 or J3 via the plurality of connecting shafts as described above.
- the corresponding sealing member C of the hydraulic actuator M is rotatably supported.
- two hydraulic actuators M are arranged in parallel with the corresponding arms 3 in the present embodiment on both sides of each arm 3 extending from the joint axis of the joints J1-J3 to the hand side (hand portion 4 side).
- the two hydraulic actuators M arranged on one side of each arm 3 constitute a first artificial muscle (one antagonist muscle) AM1 (see FIG. 3) corresponding to one joint J1, J2 or J3.
- the two hydraulic actuators M arranged on the other side of each arm 3 are the second artificial muscles (the other) corresponding to one joint J1, J2 or J3 paired with the first artificial muscle AM1.
- Antagonist muscle constitutes AM2 (see FIG. 3).
- the first and second artificial muscles AM1 and AM2 may each be composed of a single hydraulic actuator M, and the number of hydraulic actuators M constituting the first artificial muscle AM1 and the second The number of hydraulic actuators M constituting the artificial muscle AM2 may be different.
- the plurality (four) hydraulic actuators M provided for one joint J1, J2 or J3 have the same specifications.
- the specifications of the plurality of hydraulic actuators M corresponding to one joint J1, J2 or J3 do not necessarily have to be the same.
- the specifications of the hydraulic actuator M constituting the second artificial muscle AM2 may be different.
- each arm 3 is formed to be hollow, and a plurality of hoses H (see the broken line in FIG. 2) as a liquid supply pipe are arranged inside each arm 3.
- Each hose H is connected to an inlet / outlet IO formed in a sealing member C on the base end side of the corresponding hydraulic actuator M, and a liquid supply device is provided in the tube T of each hydraulic actuator M via the hose H.
- the hydraulic oil (hydraulic pressure) from 10 is supplied.
- the hydraulic pressure in the tube T of the two hydraulic actuators M constituting the first artificial muscle AM1 is paired with the first artificial muscle AM1.
- the hydraulic pressure in the tube T of the two hydraulic actuators M constituting the artificial muscle AM2 of 2 can be made different from each other.
- a force (rotational torque) is transmitted from the four hydraulic actuators M, that is, the paired (pair) of the first and second artificial muscles AM1 and AM2 to each arm 3 via the connecting member 6 to support them. It is possible to change the joint angle of the joints J1-J3 by rotating each arm 3 with respect to the member 5 or the arm 3 on the proximal end side.
- the two hydraulic actuators M constituting the first artificial muscle AM1 and the two hydraulic actuators M constituting the second artificial muscle AM2 paired with the first artificial muscle AM1 are
- the tube T is antagonistically driven by hydraulic pressure from the liquid supply device 10 with a state in which the tube T contracts in the axial direction by a predetermined amount (for example, about 10% of the natural length) as an initial state.
- the liquid supply device 10 of the robot device 1 has a tank 11 that defines a hydraulic oil storage section (liquid storage section) and a rotating shaft that extends the tank 11 in the vertical direction (one point in FIG. 1). Includes a base portion 12 that rotatably supports around the chain wire).
- the tank 11 is, for example, a cylinder whose upper end and lower end are closed, and can store hydraulic oil inside.
- the support member 5 of the robot arm 2 is fixed to the upper wall portion 11u of the tank 11 via a bolt or the like (not shown). That is, the robot arm 2 is supported by the tank 11 (upper wall portion 11u) of the liquid supply device 10.
- the base portion 12 is fixed to the installation location of the robot device 1 so as to be located below the robot arm 2 and the tank 11, or is mounted (fixed) on an automatic guided vehicle (AGV or AMR) (not shown). Further, the base portion 12 supports a rotation unit (not shown) that rotates the tank 11 around the rotation shaft. As a result, by operating the rotation unit, the robot arm 2 and the tank 11 can be integrally rotated around the rotation shaft.
- the rotating unit may be a swing motor driven by hydraulic pressure supplied from the liquid supply device 10, or may include an electric motor or the like.
- the liquid supply device 10 includes a pump 13 as a liquid supply source, a valve body (not shown) arranged in the tank 11, and a main pressure generation, in addition to the tank 11 and the base portion 12.
- the pump 13, the first and second linear solenoid valves 151, 152 and the first and second supply isolation valves 161, 162 are all controlled by the control device 100.
- the first and second linear solenoid valves 151 and 152 and the first and second supply cutoff valves 161, 162 are provided one by one for each of the joints J1, J2 and J3.
- the pump 13 is, for example, an electric pump, which sucks the hydraulic oil stored in the tank 11 and discharges it from the discharge port.
- the pump 13 includes a pump unit arranged in the tank 11 and a drive unit having an electric motor and a reduction gear mechanism and arranged in the tank 11 or outside the tank 11.
- the main pressure generation valve 14 drains (adjusts) a part of the hydraulic oil discharged from the pump 13 according to the signal pressure from the signal pressure generation valve (not shown) to generate the main pressure, and the main pressure is generated in the valve body. It is supplied to the oil passage (liquid passage) L0 formed in.
- the signal pressure generation valve of the main pressure generation valve 14 for example, a linear solenoid valve whose energization is controlled by the control device 100 is used.
- the first and second linear solenoid valves 151 and 152 include a solenoid portion 15e and a spool 15s whose energization is controlled by the control device 100, a spring SP for urging the spool 15s to the solenoid portion 15e side (upper side in FIG. 3), and the like. , Placed inside the valve body. Further, the first and second linear solenoid valves 151 and 152 have an input port 15i communicating with the oil passage L0 of the valve body, an output port 15o communicating with the input port 15i, and a feedback port 15f communicating with the output port 15o. And a drain port 15d that can communicate with the output port 15o.
- the first and second linear solenoid valves 151 and 152 are normally closed valves that open when a current is supplied to the solenoid portion 15e, and each solenoid portion 15e responds to the applied current.
- the spool 15s is moved in the axial direction.
- the thrust applied to the spool 15s from the solenoid portion 15e by supplying power to the solenoid portion 15e (coil), the urging force of the spring SP, and the hydraulic pressure supplied from the output port 15o to the feedback port 15f to the spool 15s.
- the hydraulic oil supplied from the main pressure generation valve 14 (pump 13) side to the input port 15i and flowing out from the output port 15o is regulated to a desired pressure. Can be done. Further, as shown in FIG. 3, the drain ports 15d of the first and second linear solenoid valves 151 and 152 communicate with the hydraulic oil storage portion in the tank 11 via the oil passage L3, respectively.
- the first and second supply cutoff valves 161, 162 are solenoid spool valves (solenoid valves) having the same structure as each other, and as shown in FIG. 3, the input port 16i, the first and second output ports 16oa, A sleeve having 16 obs, a spool (not shown) slidably (movably) arranged in the sleeve in the axial direction, an electromagnetic unit 16e controlled by the control device 100 to move the spool, and a spool electromagnetically. Each includes a spring (not shown) for urging the portion 16e side.
- the input port 16i of the first supply cutoff valve 161 is connected to the output port 15o of the first linear solenoid valve 151 via an oil passage formed in the valve body, and the input port 16i of the second supply cutoff valve 162 is a valve. It is connected to the output port 15o of the second linear solenoid valve 152 via an oil passage formed in the body.
- the first output port 16oa of the first supply isolation valve 161 is an inlet / outlet IO for hydraulic oil of one hydraulic actuator M (tube T) constituting the corresponding first artificial muscle AM1 via the oil passage L11.
- the second output port 16ob of the first supply isolation valve 161 is connected to the inlet / outlet IO of the hydraulic oil of the other hydraulic actuator M (tube T) constituting the first artificial muscle AM1 via the oil passage L12.
- the first output port 16oa of the second supply cutoff valve 162 is an inlet / outlet IO for hydraulic oil of one hydraulic actuator M (tube T) constituting the corresponding second artificial muscle AM2 via the oil passage L21.
- the second output port 16ob of the second supply cutoff valve 162 is connected to the inlet / outlet IO of the hydraulic oil of the other hydraulic actuator M (tube T) constituting the second artificial muscle AM2 via the oil passage L22. Will be done.
- the first and second supply cutoff valves 161, 162 are in a complete communication state, a first partial communication state, a second partial communication state, and a complete cutoff state according to the current supplied to the electromagnetic unit 16e. Form selectively.
- the first and second supply cutoff valves 161, 162 form a perfect communication state, both the input port 16i and the first and second output ports 16oa and 16ob communicate with each other.
- the first and second supply cutoff valves 161, 162 form the first partial communication state, the input port 16i and the second output port 16ob communicate with each other, and the input port 16i and the first output port 16oa communicate with each other. Is blocked.
- the input port 16i and the first output port 16oa communicate with each other, and the input port 16i and the second output port 16ob communicate with each other. Is blocked.
- the first and second supply cutoff valves 161, 162 form a complete cutoff state, the communication between the input port 16i and the first and second output ports 16oa and 16ob is cut off.
- the control device 100 of the robot device 1 includes a microcomputer including a CPU, ROM, RAM, an input / output interface, and various logic ICs (all of which are not shown).
- the control device 100 includes a main pressure sensor (not shown) that detects the pressure of the hydraulic oil in the oil passage L0 on the upstream side of the first and second linear solenoid valves 151 and 152, the first and second linear solenoid valves 151 and 152, and the first. 1.
- Input the detection value of a voltage sensor (not shown) that detects the voltage of the power supply of the second supply cutoff valves 161, 162.
- the control device 100 controls the duty of the pump 13 so that the hydraulic pressure in the oil passage L0 detected by the main pressure sensor becomes a target value, and is supplied to the electromagnetic part of the signal pressure generation valve of the main pressure generation valve 14. Control the current.
- control device 100 has a current from the first and second linear solenoid valves 151 and 152 to the first and second linear solenoid valves 151 and 152 so that the hydraulic pressure corresponding to the request is supplied to each hydraulic actuator M.
- a command value is set, and the current supplied to each solenoid unit 15e is controlled based on the current command value.
- the control device 100 basically supplies a current to each solenoid unit 16e so that the first and second supply isolation valves 161, 162 form the above-mentioned complete communication state while the robot device 1 is operated. To control.
- control device 100 includes a current detecting unit that detects a current flowing through the solenoid portion 15e of the first linear solenoid valve 151 and a current detecting unit that detects a current flowing through the solenoid portion 15e of the second linear solenoid valve 152. (Neither is shown), the current detected by each current detector is monitored.
- control device 100 first and second so as to form the first partial communication state or the second partial communication state according to the detection value from the pressure sensor (not shown) that detects the hydraulic pressure in each hydraulic actuator M. Controls the applicable supply shutoff valves 161, 162. As a result, when hydraulic oil flows out from one of the two hydraulic actuators M corresponding to any of the first and second linear solenoid valves 151 and 152 due to damage or the like, the other of the two hydraulic actuators M is affected. It is possible to continuously supply the hydraulic oil to suppress the disturbance of the behavior of the robot arm 2 and to satisfactorily suppress the further outflow of the hydraulic oil from the damaged hydraulic actuator M.
- the first or second linear solenoid valves 151, 152 correspond to the corresponding ones. It is possible to cut off the supply of hydraulic oil to the two hydraulic actuators M, or to regulate the outflow of hydraulic oil from the two hydraulic actuators M to suppress the occurrence of unintended operation of the robot arm 2. can.
- FIG. 4 is a block diagram showing a control unit of the first and second linear solenoid valves 151 and 152 in the above-mentioned control device 100.
- the control device 100 is a target position setting unit constructed by at least one of hardware such as a CPU, ROM, and RAM of a computer and software such as a control program installed in the computer.
- 101 current position derivation unit 102, target torque setting unit 105 including torque calculation unit 103 and gravity compensation unit 104, target rigidity setting unit 106, contraction rate setting unit 107, contraction force calculation unit 108, and target pressure derivation.
- a target pressure setting unit 110 including a unit 109, a current command value setting unit 111, and a valve drive unit 112 are included.
- the target position setting unit 101 is a target that is the final target position of the hand unit 4 based on the position of the gripping target of the hand unit 4 and the target speed and target acceleration of the hand unit 4 during movement given by the user.
- the arrival position (three-dimensional coordinates) and the trajectory from the initial position of the hand unit 4 to the target arrival position and including a plurality of target positions, that is, transit positions (three-dimensional coordinates) are set.
- the current position derivation unit 102 is a hand unit 4 based on the joint angles ⁇ 1, ⁇ 2, ⁇ 3 of the joints J1-J3 of the robot arm 2 and the specifications (dimensions, etc. of the arm 3) of the robot arm 2 (robot device 1).
- the current position (three-dimensional coordinates) of (predetermined reference point) is derived.
- the joint angles ⁇ 1- ⁇ 3 of the joints J1-J3 are detected by any of the corresponding joint angle sensors 7 provided on the robot arm 2.
- the torque calculation unit 103 of the target torque setting unit 105 has two arms 3 (arm 3 and a support) connected via the joint Ji so that the hand unit 4 moves from the current position to the target position for each joint J1-J3.
- the joint torque Tj (i) that relatively rotates the member 5) is calculated.
- the gravity compensating unit 104 of the target torque setting unit 105 determines the robot arm 2 for each joint J1-J3 based on the joint angle ⁇ 1- ⁇ 3 and the specifications of the robot arm 2 (robot device 1) (dimensions of the arm 3, etc.).
- the gravity compensation torque Tc (i) required to maintain the posture of is calculated.
- the target torque setting unit 105 is for relatively rotating the sum of the joint torque Tj (i) and the gravity compensation torque Tc (i) so that the two arms 3 and the like connected via the joint Ji are relatively rotated.
- the target torque Ttag (i) which is the target value (target driving force) of the joint torque Tj (i), is set.
- the target rigidity setting unit 106 has the rigidity that the joint Ji should have for each joint J1-J3, that is, two arms 3 connected via the joint Ji, etc., at least based on the target position of the robot device 1, that is, the hand unit 4. It is a force (torque) required to rotate (link) relatively by a unit angle, and makes it difficult for the joint Ji to move with respect to an external force that tries to relatively rotate the two arms 3 and the like.
- the indicated target stiffness R (i) is set. More specifically, when the target rigidity setting unit 106 moves the hand unit 4 or the like to the gripping object or the like, the target rigidity R (i) is changed according to the positional relationship between the hand unit 4 or the like and the gripping object or the like.
- the target rigidity R (i) is lowered before the hand portion 4 or the like comes into contact with the gripping object or the like. Further, the target rigidity setting unit 106 changes the target rigidity R (i) according to at least one of the moving speed and the acceleration of the hand unit 4, and the target rigidity R (i) is arranged around the robot device 1 (for example, the robot device 1 is arranged). When there is a person in the room or the area including the operating range of the robot arm 2 such as the inside of the fence, the target rigidity R (i) is lowered.
- the target rigidity R (i) of each joint Ji may be set at least based on the current position of the robot device 1, that is, the hand portion 4.
- the contraction rate setting unit 107 of the target pressure setting unit 110 is the first artificial artificial muscle corresponding to the joint Ji based on the joint angle ⁇ i of the joint Ji according to the current position of the hand unit 4 for each joint J1-J3.
- the contraction rate Cr1 (i) of the two hydraulic actuators M constituting the muscle AM1 and the contraction rate Cr2 (i) of the two hydraulic actuators M constituting the second artificial muscle AM2 corresponding to the joint Ji are obtained.
- the contraction force calculation unit 108 of the target pressure setting unit 110 has a target torque Ttag (i) set by the target torque setting unit 105 and a target rigidity R (target rigidity R) set by the target rigidity setting unit 106 for each joint J1-J3. Based on i), a plurality of (pair) hydraulic actuators corresponding to the joint Ji when the two arms 3 and the like connected via the joint Ji are relatively rotated by the target torque Ttag (i). The contraction forces Fc1 (i) and Fc2 (i) required for M are calculated.
- the contraction force Fc1 (i) is a force to be generated by the contraction of the tubes T of the two hydraulic actuators M constituting the first artificial muscle AM1 corresponding to each joint Ji
- the contraction force Fc2 (i) is It is a force to be generated by the contraction of the tube T of the two hydraulic actuators M constituting the second artificial muscle AM2 corresponding to each joint Ji.
- the target pressure derivation unit 109 of the target pressure setting unit 110 has the contraction rate Cr1 (i) and the contraction force set by the contraction rate setting unit 107 from the static characteristics of the hydraulic actuator M as an artificial muscle for each joint J1-J3.
- the pressure corresponding to the contraction force Fc1 (i) calculated by the calculation unit 108 is derived and set to the target pressure Ptag1 (i) of the two hydraulic actuators M constituting the first artificial muscle AM1.
- the target pressure derivation unit 109 has a contraction rate Cr2 (i) set by the contraction rate setting unit 107 and a contraction force Fc2 (i) calculated by the contraction force calculation unit 108 from the static characteristics for each joint J1-J3.
- the target pressure Ptag2 (i) of the two hydraulic actuators M constituting the second artificial muscle AM2 by deriving the pressure corresponding to the above.
- the current command value setting unit 111 sets the target pressures Ptag1 (i) and Ptag2 (i) set by the target pressure setting unit 110 to the solenoid units 15e of the first and second linear solenoid valves 151 and 152 (current command value setting unit 111). Convert directly to the target current).
- the valve drive unit 112 sets a target voltage by feed-forward control (or feed-forward control and feedback control) so that the current detected by the above-mentioned current detection unit (not shown) matches the current command value, and sets the target voltage. Convert to PWM signal.
- valve drive unit 112 controls switching of a switching element (transistor) (not shown) based on the PWM signal to apply a current to the solenoid units 15e of the first and second linear solenoid valves 151 and 152.
- a switching element transistor
- the first and second linear solenoid valves 151 and 152 are controlled to generate hydraulic pressure according to the target pressure Ptag1 (i) or Ptag2 (i).
- control procedure of the above-mentioned robot device 1 will be described with reference to FIGS. 5 to 10.
- control procedure of the robot device 1 will be described by taking as an example a case where the hand portion 4 of the robot device 1 is moved to the gripping target and the hand portion 4 grips and transfers the gripping target.
- the hand of the robot arm 2 that is, the hand portion 4, and the gripping target are connected via a virtual spring and a damper, and the virtual spring and the damper are generated.
- the tensile force Ft (f x , f y , f z ) due to the virtual spring and damper is the target position (xd (t), of the hand portion 4 (predetermined reference point).
- the gripping target is pulled by the virtual spring and damper according to the above equation (1).
- the position (contact position) of the gripping object (x o , yo , z o ) and the gains K px , K py , K pz can be expressed as the following equation (2).
- the routine of FIG. 5 is executed by the target position setting unit 101 of the control device 100, and the final of the hand unit 4 is executed.
- a target arrival position (x r , y r , z r ) and a target trajectory of the hand unit 4 from the initial position to the target arrival position (x r , y r , z r ) are set.
- the target position setting unit 101 of the control device 100 determines the position (x o , yo , z o ) of the gripping target and the target speed of the hand unit 4 given by the user during movement.
- the position (x o , yo , z o ) of the gripping object may be input to the control device 100 by the user of the robot device 1 if it is known in advance, and the camera may be input to the control device 100 before the operation of the robot arm 2 is started. It may be derived from the data acquired by the above.
- the target position setting unit 101 reaches the target of the hand unit 4 in which a predetermined pressing force Fp is applied from the hand unit 4 to the gripping object after the contact between the hand unit 4 and the gripping object according to the above equation (2).
- the position (x r , y r , z r ) is set (step S2).
- the pressing force Fp (f px , f py , f pz ) in the equation (2) is based on the specifications such as the material, strength, and size of the gripping object, without destroying the gripping object.
- the target position setting unit 101 is based on the target speed and target acceleration of the hand unit 4 acquired in step S1 and the target arrival position (x r , y r , z r ) set in step S2.
- a target trajectory of the hand unit 4 including a predetermined number (plural) target positions, that is, transit positions (three-dimensional coordinates) is set (step S3), and the routine of FIG. 5 is terminated.
- the target arrival position and the target trajectory are set according to the transfer destination (the mounting surface of the grip target) of the grip target.
- the routine of FIG. 5 is executed again by the target position setting unit 101.
- the target position setting unit 101 is placed on the mounting surface (target) from the hand unit 4 via the gripping target after the contact between the gripping target (hand) gripped by the hand unit 4 and the mounting surface (target).
- the target arrival position (x r , y r , z r ) of the hand unit 4 to which the predetermined pressing force Fp is applied is set.
- FIG. 6 is a flowchart illustrating a robot arm control routine executed by the control device 100 after the target arrival position and the target trajectory are set. After the routine of FIG. 5 is completed, the routine of FIG. 6 is repeatedly executed by the control device 100 at predetermined time (for example, about 10 ms) in response to an execution instruction by the user.
- predetermined time for example, about 10 ms
- the torque calculation unit 103 (target torque setting unit 105) and the target rigidity setting unit 106 of the control device 100 each acquire the target position set by the target position setting unit 101 (step S10). ..
- the target position acquired in step S10 is the first target position in the target trajectory or the target position acquired at the time of the previous execution of the routine of FIG.
- the current position derivation unit 102 and the gravity compensation unit 104 of the control device 100 acquire the joint angles ⁇ 1- ⁇ 3 of the joints J1-J3 acquired by the plurality of joint angle sensors 7 (step S20).
- the current position deriving unit 102 derives the current position (three-dimensional coordinates) of the hand unit 4 based on the acquired joint angle ⁇ 1- ⁇ 3 and the specifications of the robot arm 2 (robot device 1) (step S30). The derived current position is given to the torque calculation unit 103.
- the torque calculation unit 103 (target torque setting unit 105) of the control device 100 determines whether or not the current position of the hand unit 4 has changed from the previous position (whether or not the hand unit 4 has moved) (step). S40). When the torque calculation unit 103 determines that the current position of the hand unit 4 has changed from the previous position (step S40: YES), it further determines whether or not the current position substantially matches the target position. Determination (step S50). When it is determined that the current position substantially matches the target position (step S50: YES), the torque calculation unit 103 acquires the target position next to the target position acquired in step S10 (step S60). ..
- the next target position is also given to the target rigidity setting unit 106, and the target rigidity setting unit 106 sets the target rigidity R (i) of each joint Ji based on the acquired target position and the like. Further, if the current position of the hand unit 4 does not substantially match the target position, the process of step S60 is skipped.
- FIG. 7 is a flowchart illustrating a procedure for setting the target torque Ttag (i) by the target torque setting unit 105 in step S70.
- the torque calculation unit 103 of the target torque setting unit 105 first sets the above-mentioned gains K px , K py and K pz based on the target position of the hand unit 4 acquired in step S10. (Step S700).
- step S700 the torque calculation unit 103 has gains K px , K py and K pz until the target position acquired in step S10 reaches a predetermined target position (for example, a position where the hand unit 4 starts decelerating). After each is set to a predetermined normal value and the target position acquired in step S10 becomes the predetermined target position, each of the gains K px , K py and K pz is smaller than the above normal value. Set to a value.
- the torque calculation unit 103 describes the above-mentioned virtual from the above equation (1) based on the target position of the hand unit 4 acquired in step S10 and the current position of the hand unit 4 acquired in step S30.
- the movement of the robot arm 2 (each joint Ji) can be made smoother.
- the torque calculation unit 103 acquires a separately set human feeling flag (step S720), and determines whether or not the human feeling flag is turned off (step S730).
- the human sensor is turned on or off by the control device 100 based on a signal from at least one motion sensor 8 (see FIG. 1) arranged at the installation location of the robot device 1 or an automatic guided vehicle. .. That is, when the presence of a person is not detected within a predetermined range centered on the motion sensor 8, the control device 100 turns off the motion flag and at least one person. When the presence of a person is detected within the predetermined range by the motion sensor 8, the motion flag is turned on.
- step S730: YES When the torque calculation unit 103 determines that the human feeling flag is turned off (step S730: YES), the torque calculation unit 103 sets the first force (vector) Fu1 to the upper limit value Fu of the tensile force Ft (step S740). Further, when the torque calculation unit 103 determines that the human feeling flag is turned on (step S730: NO), the torque calculation unit 103 sets the second force (vector) Fu2, which is smaller than the first force Fu1, to the upper limit of the tensile force Ft. Set to the value Fu (step S745). After the process of step S740 or S745, the torque calculation unit 103 sets (resets) the smaller of the tensile force Ft and the upper limit value Fu set in step S710 to the tensile force Ft (step S750).
- the torque calculation unit 103 has a hand unit 4 for each joint J1-J3 from the tensile force Ft set in step S750 and the Jacobian determinant shown in the following equation (5).
- the target torque setting unit 105 sums the joint torque Tj (i) calculated by the torque calculation unit 103 as described above and the gravity compensation torque Tc (i) separately calculated by the gravity compensation unit 104.
- the target torque Ttag (1) -Ttag (3) for relatively rotating the two arms 3 and the like is set (step S770).
- FIG. 8 is a flowchart illustrating the setting procedure of the target pressures Ptag1 (i) and Ptag2 (i) by the target pressure setting unit 110 in step S80.
- the target pressure setting unit 110 first sets the variable i, that is, the joint number to the value 1 (step S800).
- the contraction force calculation unit 108 of the target pressure setting unit 110 has a target torque Ttag (i) for the joint Ji set by the target torque setting unit 105 and a target rigidity of the joint Ji set by the target rigidity setting unit 106.
- Acquire R (i) step S810).
- the contraction rate setting unit 107 of the target pressure setting unit 110 acquires the current joint angle ⁇ i of the joint Ji detected by the corresponding joint angle sensor 7.
- the contraction rate setting unit 107 of the target pressure setting unit 110 that has acquired the joint angle ⁇ i has the contraction rate Cr1 (i) of the two hydraulic actuators M constituting the first artificial muscle AM1 corresponding to the joint Ji, and the joint.
- the contraction rate Cr2 (i) of the two hydraulic actuators M constituting the second artificial muscle AM2 corresponding to Ji is set (step S820).
- the contraction rate setting unit 107 configures the first artificial muscle AM1 based on the joint angle ⁇ i of the joint Ji, the specifications of the robot arm 2 (robot device 1) (dimensions of the arm 3 and the like), and the like.
- the contraction rate Cr1 (i) of the two hydraulic actuators M and the contraction rate Cr2 (i) of the two hydraulic actuators M constituting the second artificial muscle AM2 are derived and set.
- the contraction force calculation unit 108 of the target pressure setting unit 110 is the first artificial muscle corresponding to the joint Ji based on the target torque Ttag (i) acquired in step S810 and the target rigidity R (i) of the joint Ji.
- the contraction force (tensile force) Fc1 (i) required for the two hydraulic actuators M constituting the muscle AM1 and the two hydraulic actuators M constituting the second artificial muscle AM2 corresponding to the joint Ji are required.
- the contraction force (tensile force) Fc2 (i) to be generated is calculated (step S830).
- step S830 the contraction force calculation unit 108 solves the simultaneous equations obtained from these two relational expressions, and thereby, the contraction force Fc1 corresponding to the target torque Ttag (i) and the target rigidity R (i) of the joint Ji. (I), Fc2 (i) is calculated.
- the target pressure derivation unit 109 of the target pressure setting unit 110 has a pressure corresponding to the contraction rate Cr1 (i) and the contraction force Fc1 (i) from the target pressure setting map illustrated in FIG. Is appropriately linearly interpolated and set to the target pressure Ptag1 (i) of the two hydraulic actuators M constituting the first artificial muscle AM1 (step S840). Further, in step S840, the target pressure derivation unit 109 derives the pressure corresponding to the contraction rate Cr2 (i) and the contraction force Fc2 (i) from the target pressure setting map to form the second artificial muscle AM2. The target pressure Ptag2 (i) of the two hydraulic actuators M is set.
- the target pressure setting map of FIG. 9 shows the static characteristics of the hydraulic actuator M as an artificial muscle, and the contraction rate of the tube T and the tube T are generated for each hydraulic pressure supplied to the hydraulic actuator M. It was created through experiments and analysis in advance so as to define the relationship with the contraction force. In this way, the pressure corresponding to the contraction rates Cr1 (i) and Cr2 (i) and the contraction forces Fc1 (i) and Fc2 (i) of the tube T is set to the target pressures Ptag1 (i) and Ptag2 (i). Therefore, the target pressures Ptag1 (i) and Ptag2 (i) can be set accurately according to the request to the robot arm 2.
- the target pressure setting unit 110 increments the variable i (step S850) and determines whether or not the variable i is a value N + 1 or more. Determination (step S860).
- the target pressure setting unit 110 determines that the variable i is less than the value N + 1 (step S860: NO)
- the target pressure setting unit 110 re-executes the process of the above steps S810-S860.
- the target pressure setting unit 110 determines that the variable i is the value N + 1 or more (step S860: YES), as shown in FIG.
- the current command value setting unit 111 of the control device 100 displays a map or the like (not shown). Using, each of the target pressures Ptag1 (i) and Ptag2 (i) of each joint Ji is directly converted into a current command value (step S90).
- the current command value derived by the current command value setting unit 111 is given to the valve drive unit 112 of the control device 100, and the valve drive unit 112 has a plurality of first and second linear solenoids, respectively, based on the current command.
- the valves 151 and 152 are controlled (PWM control) (step S100).
- the current command value to the liquid supply device 10 according to the target torque Ttag (i) is easily and quickly set, and the first and second linears of the liquid supply device 10 are controlled based on the current command value.
- Each of the solenoid valves 151 and 152 produces a hydraulic pressure corresponding to the corresponding target pressure Ptag1 (i) or Ptag2 (i). Further, the hydraulic oil regulated by the first and second linear solenoid valves 151 and 152 is supplied to the tube T of the corresponding hydraulic actuator M via the first and second supply cutoff valves 161, 162.
- the flow rate control valve adjusts the flow rate of the hydraulic oil and supplies it into the tube T, or the hydraulic pressure supplied to the tube T is detected by the pressure sensor so that the actual hydraulic pressure matches the target pressure.
- the hydraulic pressure supplied to each tube T within a short time from the setting of the target pressures Ptag1 (i) and Ptag2 (i) is applied to the target pressures Ptag1 (i) and Ptag2 (i), as compared with the case of feedback control. It is possible to substantially match i) so that the actual shrinkage rate of each tube T can be made to follow the required value with good responsiveness and high accuracy.
- the control device 100 temporarily terminates the routine of FIG. 6, and executes the process of step S10 and subsequent steps again according to the arrival of the next execution timing.
- step S40 of FIG. 6 determines that the current position is from the previous position. It is determined whether or not a predetermined relatively short time (predetermined time) has elapsed since the change substantially stopped (step S55). When it is determined that the predetermined time has not elapsed since the current position does not substantially change (step S55: NO), the torque calculation unit 103 determines, for example, the difference between the target arrival position and the current position and the said. The target position of the hand unit 4 is set based on the predetermined time (step S65).
- predetermined time a predetermined relatively short time
- step S65 for example, the torque calculation unit 103 sets the target position so that the target position coincides with the target arrival position shortly before the predetermined time elapses after the current position does not substantially change. And change at a constant rate.
- the processes after step S70 are executed. Further, the target position set in step S65 is also given to the target rigidity setting unit 106, and the target rigidity setting unit 106 sets the target rigidity R (i) of each joint Ji based on the acquired target position and the like. Set.
- step S55 the control device 100 ends the routine of FIG. 6 and causes the hand unit 4 to grip the gripping object. Executes the hand control routine of. Further, the target position setting unit 101 of the control device 100 executes the routine of FIG. 5 until the gripping target is gripped by the hand unit 4, and sets the target arrival position and the target trajectory according to the mounting position of the gripping target. Set. Further, when the gripping target is gripped by the hand unit 4 and the hand control routine is completed, the control device 100 re-executes the routine of FIG. 6 in order to convey the gripping target to the mounting position by the robot arm 2.
- the target position of the hand unit 4 may be set to change at a predetermined rate from the current position to the target arrival position, and the target position is one to the target arrival position.
- the routine of FIG. 6 may be terminated when a predetermined time has elapsed.
- the target position setting unit 101 of the control device 100 of the robot device 1 mounts the gripping target (hand) gripped by the hand portion 4 of the robot device 1 or the hand portion 4 on the gripping target or the gripping target.
- the gripping object or mounting from the hand unit 4 A target reaching position of the hand portion 4 to which a predetermined pressing force Fp is applied to the surface is set (step S2 in FIG. 5). That is, as shown in FIG. 10, the target position setting unit 101 sets a position slightly ahead of the position of the pinching target or the like to the target arrival position of the hand unit 4.
- the control device 100 has a target torque Ttag (i) for each joint Ji of the robot arm 2 based on the target position forming the target trajectory set based on the target arrival position and the current position of the hand unit 4. (Step S70 in FIG. 6), and the target pressures Ptag1 (i) and Ptag2 (i) of the plurality of hydraulic actuators M corresponding to each joint Ji are set based on the target torque Ttag (i) (FIG. 6). Step S80 of 6. Further, in the control device 100, the pressure of the hydraulic oil supplied to each hydraulic actuator M is applied from before the hand portion 4 comes into contact with the gripping object or the mounting surface until the target position coincides with the target arrival position. The first and second linear solenoid valves 151 and 152 of the liquid supply device 10 are controlled so as to have the target pressures Ptag1 (i) and Ptag2 (i) (steps S90-S100 in FIG. 6).
- the above-mentioned pushing is performed in consideration of variations in the position of the gripping object or the like so that the hand portion 4 or the gripping object (hand) is brought into contact with the gripping object or the mounting surface (object) without destroying the gripping object.
- the pressure Fp is set, the moving speed of the hand unit 4 is reduced when the hand unit 4 or the like approaches the gripping object to some extent, or the sensor detects the contact between the hand unit 4 or the like and the gripping object or the like. It is possible to bring the hand portion 4 or the like of the robot device 1 into contact with the gripping object or the like without causing the trouble.
- the target torque (target driving force) Ttag (i) based on the target position of the hand unit 4 according to the target arrival position and the current position of the hand unit 4, and more specifically, the target torque Ttag (i).
- the liquid supply device 10 By controlling the liquid supply device 10 based on the target pressures Ptag1 (i) and Ptag2 (i) based on, each liquid without using a sensor for detecting the hydraulic pressure supplied to each hydraulic actuator M as an artificial muscle. It is possible to operate the pressure actuator M with high accuracy and responsiveness to the request.
- the target position setting unit (target arrival position setting unit and target trajectory setting unit) 101 of the control device 100 sets the target arrival position, and is based on the target arrival position, the target speed of the hand unit 4, and the target acceleration.
- the target trajectory of the hand unit 4 including the plurality of target positions is set (steps S1-S3 in FIG. 5).
- the target torque setting unit 105 calculates the tensile force (driving force) Ft for moving the hand unit (hand) 4 of the robot device 1 from the current position to the target position, and determines the joint Ji based on the tensile force Ft.
- the target torque Ttag (i) for relatively rotating the two arms (links) 3 and the like connected via the beam is set (step S70 in FIG.
- the target pressure setting unit 110 sets the target pressures Ptag1 (i) and Ptag2 (i) based on the target torque Ttag (i) (step S80 in FIG. 6). Further, the current command value setting unit 111 directly converts the target pressures Ptag1 (i) and Ptag2 (i) into current command values to the first and second linear solenoid valves 151 and 152 of the liquid supply device 10 (FIG. 6). Step S90).
- the current command values from the target torque Ttag (i) to the first and second linear solenoid valves 151 and 152 are easily and quickly set to respond to the hydraulic pressure supplied to each hydraulic actuator M as an artificial muscle.
- the hand portion 4 of the robot device 1 is moved so as to follow a target trajectory by a plurality of hydraulic actuators M so that the hand portion 4 is brought into contact with the gripping target, or the gripping target is brought into contact with the mounting surface. It is possible to make it.
- the target position setting unit 101 may set only the target arrival position without setting the target trajectory. In this case, the target torque setting unit 105 determines the difference between the target arrival position and the current position.
- the target Ttag (i) may be set based on the above.
- the position of the gripping object cannot be accurately acquired at the start of starting the robot device 1, the position of the gripping object acquired by a camera or the like at predetermined time intervals after the hand unit 4 approaches the gripping object.
- the target arrival position may be derived from the predetermined time intervals.
- the torque calculation unit 103 of the target torque setting unit 105 calculates the tensile force Ft so as not to exceed a predetermined upper limit value Fu (Fu1 or Fu2) (step S750 in FIG. 7).
- the torque calculation unit 103 has a person around the robot device 1 (for example, an area including an operating range of the robot arm 2 such as a room where the robot device 1 is arranged or the inside of a fence).
- the upper limit value Fu is made smaller than when there is no person around the robot device 1 (FIG. 7). Step S720-S745).
- the target position setting unit (target trajectory setting unit) 101 determines in step S40 of FIG. 6 that the current position of the hand unit 4 has not substantially changed from the previous position.
- the target position of the hand unit 4 may be set at predetermined time intervals while limiting the target acceleration separately given so as not to exceed a predetermined upper limit acceleration.
- the target position setting unit 101 may be configured so that when there is a person around the robot device 1, the upper limit acceleration is smaller than when there is no person around the robot device 1. Even with this aspect, even if a person comes into contact with the robot device 1 while the hand portion 4 of the robot device 1 moves along the target trajectory, the force received by the person after the contact can be satisfactorily relaxed. Become.
- the torque calculation unit 103 of the target torque setting unit 105 includes a relational expression of feedback control including a proportional term obtained by multiplying the difference between the target position and the current position by the gains K px , K py , and K pz .
- the tensile force Ft is calculated according to 1), and the gains K px , K py , and K pz are changed according to the target position of the hand portion 4 (step S700 in FIG. 7). This makes it possible to change the followability of the hand unit 4 to the target trajectory and the degree of increase of the pressing force Fp applied from the hand unit 4 or the like to the gripping object or the like after contact.
- the gain K px , K py , and K pz are increased, the followability of the hand portion 4 to the target trajectory is improved, while after the contact between the hand portion 4 and the gripping target or between the gripping target and the mounting surface.
- the increasing gradient of the pressing force Fp after the contact is increased.
- the gains K px , K py , and K pz are reduced, the followability of the hand portion 4 to the target trajectory becomes gentle, but after the contact between the hand portion 4 and the gripping target or on the gripping target.
- the increasing gradient of the pressing force Fp after contact with the mounting surface can be reduced.
- the gains K px , K py , and K pz are made smaller than the previous values when the hand portion 4 approaches the gripping object or the mounting surface to some extent, the responsiveness of the robot device 1 is achieved. And safety can be further improved.
- the gains K px , K py , and K pz may be changed according to the current position of the hand unit 4.
- the torque calculation unit 103 of the target torque setting unit 105 calculates the joint torque Tj (i) for moving the hand unit 4 of the robot device 1 from the current position to the target position for each joint J1-J3. do. Further, the gravity compensating unit 104 of the target torque setting unit 105 calculates the gravity compensating torque Tc (i) required to maintain the posture of the robot arm 2 (robot device 1) for each of the joints J1-J3. Further, the target torque setting unit 105 is for relatively rotating the sum of the joint torque Tj (i) and the gravity compensation torque Tc (i) so that the two arms 3 and the like connected via the joint Ji are relatively rotated.
- the target torque Ttag (i) is set (step S70 in FIG. 6 and step S770 in FIG. 7). This makes it possible to move the hand portion 4 of the robot device 1 by the plurality of hydraulic actuators M while suppressing the disturbance of the behavior of the robot arm 2 (robot device 1).
- control device 100 corresponds to the target rigidity setting unit 106 that sets the target rigidity R (i) of each joint Ji based on at least the target position of the hand unit 4 of the robot device 1 and the current position of the robot device 1.
- the contraction rate setting unit 107 that sets the contraction rates Cr1 (i) and Cr2 (i) of each hydraulic actuator M based on each joint angle ⁇ i, and the target torque Ttag (i) and the target rigidity R (i).
- the contraction force calculation unit 108 that calculates the contraction forces Fc1 (i) and Fc2 (i) required for the plurality of (pair) hydraulic actuators M corresponding to the joint Ji, and the contraction rate Cr1 (i) from the target pressure setting map.
- the pressure corresponding to the contraction force Fc1 (i) and the contraction rate Cr2 (i) and the pressure corresponding to the contraction force Fc2 (i) are derived and set to the target pressures Ptag1 (i) and Ptag2 (i).
- a target pressure derivation unit 109 the target pressures Ptag1 (i) and Ptag2 (i) are accurately set according to the requirements of each hydraulic actuator M as an artificial muscle, and the robot device 1 including the plurality of hydraulic actuators M is responsively stable. It becomes possible to operate.
- the robot device 1 of the present disclosure includes a robot arm (robot body) 2 including a plurality of hydraulic actuators (artificial muscles) M that are operated by being supplied with hydraulic oil (fluid), and the plurality of robot devices 1.
- a control device 100 for controlling is included.
- the control device 100 Prior to the start of operation of the robot arm 2 (start of movement of the hand unit 4), the control device 100 has a pressing force Fp predetermined from the hand unit 4 to the gripping object or the like after the contact between the hand unit 4 or the like and the gripping object or the like. Is set for the target arrival position of the hand portion 4 to which is added (steps S1-S3 in FIG. 5). Further, the control device 100 is based on the difference between the target position forming the target trajectory from the initial position of the hand unit 4 (the position before contacting the gripping object or the like) to the target arrival position and the current position of the hand unit 4. The target pressures Ptag1 (i) and Ptag2 (i) of the hydraulic oil supplied to each hydraulic actuator M are set (step S80 in FIG.
- the pressure of the hydraulic oil supplied to each hydraulic actuator M is the target pressure Ptag1 from before the hand portion 4 comes into contact with the gripping object or the like until the target position coincides with the target arrival position.
- the first and second linear solenoid valves 151 and 152 of the liquid supply device 10 are controlled so as to be (i) and Ptag2 (i) (steps S90-S100 in FIG. 6).
- the hand portion 4 or the like can be set.
- the hand unit of the robot device 1 does not reduce the moving speed of the hand unit 4 when the robot device 1 or the like approaches the gripping object or the like to some extent, or detects contact between the hand unit 4 or the like and the gripping object or the like by a sensor.
- the 4th magnitude and the gripping object can be brought into contact with each other.
- each hydraulic actuator M is responsive to a request without using a sensor for detecting the hydraulic pressure supplied to each hydraulic actuator M as an artificial muscle. It is possible to operate it with high accuracy.
- the hand portion 4 or the like of the robot device 1 including a plurality of hydraulic actuators as artificial muscles that operate by receiving the supply of hydraulic oil can be brought into contact with the gripping object or the like appropriately and promptly.
- the target arrival position does not necessarily have to be set before the start of operation of the robot arm 2 (start of movement of the hand portion 4), and before the hand portion 4 and the gripping object or the like come into contact with each other. It may be set. That is, when the moving distance of the hand portion 4 is relatively long, the target arrival position may be set after the hand portion 4 is brought close to the gripping target to some extent by, for example, position control.
- the control device 100 gradually changes the target position of the hand unit 4 to the target arrival position after the current position of the hand unit 4 does not change (steps S55 and S65 in FIG. 6). ..
- the force applied to the gripping object or the like from the hand portion 4 after the contact between the hand portion 4 and the gripping object or the like can be made equal to or less than the pressing force Fp.
- the target position while the current position of the hand unit 4 changes is the target arrival position and the hand unit according to the gripping target and the like.
- a plurality of settings are made based on the target speed and the target acceleration of 4 (FIG. 5). This makes it possible to move the hand portion 4 smoothly and stably to the gripping target or the like.
- the plurality of target positions may be set based on one of the target arrival position and the target speed and the target acceleration of the hand unit 4.
- the control device 100 calculates the tensile force Ft for moving the hand portion 4 from the current position to the target position, and based on the tensile force Ft, the two arms (links) 3 and the like connected via the joint Ji, etc.
- the target torque setting unit 105 for setting the target torque Ttag (i) for relatively rotating the target torque, and the target for setting the target pressures Ptag1 (i) and Ptag2 (i) based on the target torque torque Ttag (i). Includes a pressure setting unit 110.
- the target torque setting unit 105 (torque calculation unit 103) of the control device 100 calculates the tensile force Ft so as not to exceed a predetermined upper limit value Fu (Fu1 or Fu2), and at the same time, around the robot device 1.
- the upper limit value Fu is made smaller than when there is no person around the robot device 1 (steps S720-S750 in FIG. 7).
- the target torque setting unit 105 (torque calculation unit 103) is pulled according to the feedback control relational expression (1) including a proportional term obtained by multiplying the difference between the target position and the current position by the gains K px , K py , and K pz .
- the force Ft is calculated, and the gains K px , K py , and K pz are changed according to the target position of the hand unit 4 (step S700 in FIG. 7). This makes it possible to change the followability of the hand unit 4 to the target trajectory and the degree of increase of the pressing force Fp applied from the hand unit 4 or the like to the gripping object or the like after contact.
- the robot device 1 includes a plurality of joints Ji, a plurality of arms 3 as a plurality of links, and a support member 5, and the hydraulic actuator M includes two arms 3 and the like connected via the joints Ji.
- the two arms 3 and the like constitute two hydraulic actuators M constituting the first artificial muscle AM1 and a second artificial muscle AM2 arranged so as to antagonize the two hydraulic actuators M. It is rotated relative to the other two hydraulic actuators M. This makes it possible to rotate one of the two arms 3 and the like connected via the joint Ji by a plurality of paired hydraulic actuators M with high accuracy and responsiveness to the other.
- the hydraulic actuator M of the above may be connected to an elastic body such as a spring or a rubber material arranged so as to antagonize the hydraulic actuator M.
- first and second linear solenoid valves 151 and 152 include a solenoid portion 15e, a spool 15s, a spring SP for urging the spool 15s, an input port 15i to which hydraulic oil is supplied, an output port 15o, and an output port 15o. It includes a feedback port 15f that communicates with the input port 15i and a drain port 15d that can communicate with the input port 15i and the output port 15o. Further, the first and second linear solenoid valves 151 and 152 are added to the spool 15s by the thrust generated by the solenoid portion 15e, the urging force of the spring SP, and the action of the hydraulic pressure supplied from the output port 15o to the feedback port 15f. The pressure of the hydraulic oil is adjusted by balancing the thrust.
- At least one of the first and second linear solenoid valves 151 and 152 may be a normally open valve.
- the normally open valve balances the thrust from the solenoid part and the thrust due to the hydraulic pressure supplied to the feedback port so as to act in the same direction as the thrust from the solenoid part with the urging force of the spring.
- at least one of the linear solenoid valves 151-156 does not have a dedicated feedback port, and is configured so that the output pressure (driving pressure) acts on the spool as a feedback pressure inside the sleeve accommodating the spool. (For example, see JP-A-2020-41687).
- At least one of the first and second linear solenoid valves 151 and 152 (for example, the maximum value of the required output (product of contraction force and contraction speed) is all hydraulic actuators M.
- the linear solenoid valve (or on / off solenoid valve) that outputs the signal pressure according to the current supplied to the solenoid part and the one corresponding to the hydraulic actuator M, which is the largest in the above, operates according to the signal pressure. It may be replaced with a control valve that regulates the pressure of oil.
- the control valve includes a spool arranged in the valve body, a spring for urging the spool, an input port, an output port, a feedback port, a signal pressure input port, and a drain port. It may be configured so that the output pressure (driving pressure) acts on the spool as a feedback pressure inside the spool.
- At least one of the first and second linear solenoid valves 151 and 152 is a flow control valve in which the hydraulic pressure (hydraulic pressure) supplied to the corresponding hydraulic actuator M is controlled to be the target pressure. It may be replaced. Further, the original pressure generation valve 14 may be omitted from the liquid supply device 10. Further, an accumulator (accumulator) for storing the hydraulic pressure generated by the pump 13 may be provided in the liquid supply device 10. Further, the liquid supply device 10 may be configured to supply a liquid other than hydraulic oil such as water to the hydraulic actuator M. In addition, the first and second linear solenoid valves 151 and 152 may be omitted from the liquid supply device 10, and a pump as a hydraulic pressure adjusting device may be provided for each of the plurality of hydraulic actuators M.
- the hydraulic actuator M as an artificial muscle includes a tube T to which hydraulic oil is supplied to the inside and contracts in the axial direction while expanding in the radial direction in response to an increase in the hydraulic pressure inside.
- the hydraulic actuator M may include a tube that expands in the radial direction and contracts in the axial direction when the liquid is supplied.
- an inner tubular member formed of an elastic body and an elastic body.
- Axial fiber reinforced liquid containing an outer tubular member and a fiber layer arranged between the inner tubular member and the outer tubular member.
- the hydraulic actuator M may be a liquid cylinder including a cylinder and a piston.
- the artificial muscle of the robot device 1 may use a gas such as air as a working fluid.
- the robot arm 2 of the robot device 1 may include a swing motor (for example, a swing motor that rotates the base (wrist portion) of the hand portion 4) as a hydraulic actuator (fluid actuator). That is, the robot arm 2 (robot body) may include at least one of a hydraulic actuator as an artificial muscle and a swing motor. Further, the robot arm 2 of the robot device 1 may include a fluid pressure cylinder such as an air cylinder or a hydraulic cylinder as a hydraulic actuator. Further, in the robot device 1, the tank 11 may be supported by a robot body such as a robot arm 2.
- the robot device 1 may include only one joint, or may include only one or two hydraulic actuators M as artificial muscles. Further, the robot device 1 is not limited to those including a robot arm 2 having at least one hydraulic actuator M or the like and a hand portion 4, and the robot device 1 includes at least one hydraulic actuator, a tool such as a drill bit, or a switch or the like. An element other than the hand portion 4 such as a pressing member that presses the robot arm may include a robot arm attached to the hand. Further, the robot device 1 may be a walking robot, a wearable robot, or the like.
- FIG. 11 is a block diagram showing another control device 100B applicable to the robot device 1.
- the same elements as those of the control device 100 described above are designated by the same reference numerals, and duplicate description will be omitted.
- the control device 100B shown in FIG. 11 is also constructed by at least one of hardware such as a computer CPU, ROM, and RAM, and software such as a control program installed in the computer. As shown in the figure, the control device 100B has a target position setting unit 101, a current position derivation unit 102, a target torque setting unit 105 (torque calculation unit 103 and a gravity compensation unit 104), and a target, similarly to the control device 100. The rigidity setting unit 106 and the valve drive unit 112 are included. Further, the control device 100B includes a contraction rate setting unit 107, a contraction force calculation unit 108, and a target pressure setting unit 110B including a target pressure derivation unit 109B different from that of the control device 100, and the control device 100. It includes a different current command value setting unit 111B, a volume estimation unit 118, and a flow rate estimation unit 119.
- the contraction rate setting unit 107 of the target pressure setting unit 110B is the first artificial muscle corresponding to the joint Ji based on the joint angle ⁇ i of the joint Ji according to the current position of the hand unit 4 for each joint J1-J3.
- the contraction rate Cr1 (i) of each hydraulic actuator M constituting AM1 and the contraction rate Cr2 (i) of each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji are set.
- the contraction force calculation unit 108 of the target pressure setting unit 110B has a target torque Ttag (i) set by the target torque setting unit 105 and a target rigidity set by the target rigidity setting unit 106 for each joint J1-J3.
- the target pressure derivation unit 109B has a target torque Ttag (2) indicating a force required for each hydraulic actuator M based on the contraction rates Cr1 (i) and Cr2 (i) and the contraction forces Fc1 (i) and Fc2 (i).
- the target pressures Ptag1 (i) and Ptag2 (i) according to i) are configured to be changed between when the tube T contracts in the axial direction and when the tube T expands in the axial direction.
- the volume estimation unit 118 is set by the previous value of the target pressure Ptag1 (i) set (derived) by the target pressure setting unit 110 (target pressure derivation unit 109) and the contraction rate setting unit 107 for each joint J1-J3. Based on the contraction rate Cr1 (i), the volume V1 (i) of the tube T of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji is estimated (derived). Further, the volume estimation unit 118 has the previous value of the target pressure Ptag2 (i) set (derived) by the target pressure setting unit 110 (target pressure derivation unit 109) and the contraction rate setting unit 107 for each of the joints J1-J3. Based on the contraction rate Cr2 (i) set by, the volume V2 (i) of the tube T of each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji is estimated (derived).
- the flow rate estimation unit 119 is the first artificial muscle AM1 corresponding to the joint Ji based on the previous value and the current value of the volume V1 (i) estimated (derived) by the volume estimation unit 118 for each joint J1-J3.
- the flow rate Q1 (i) of the hydraulic oil supplied to the tube T of each hydraulic actuator M constituting the above is estimated (calculated).
- the flow rate estimation unit 119 is a second artificial muscle corresponding to the joint Ji based on the previous value and the current value of the volume V2 (i) estimated (derived) by the volume estimation unit 118 for each joint J1-J3.
- the flow rate Q2 (i) of the hydraulic oil supplied to the tube T of each hydraulic actuator M constituting the muscle AM2 is estimated (calculated).
- the current command value setting unit 111 is the first unit corresponding to the joint Ji based on the target pressure Ptag1 (i) set by the target pressure setting unit 110 and the flow rate Q1 (i) estimated by the flow rate estimation unit 119.
- a current command value (target current) for the first linear solenoid valve 151 (solenoid portion 15e) for adjusting the hydraulic pressure to each hydraulic actuator M constituting the artificial muscle AM1 is set.
- the current command value setting unit 111 corresponds to the joint Ji based on the target pressure Ptag2 (i) set by the target pressure setting unit 110 and the flow rate Q2 (i) estimated by the flow rate estimation unit 119.
- a current command value (target current) is set for the second linear solenoid valve 152 (solenoid portion 15e) that adjusts the hydraulic pressure to each hydraulic actuator M constituting the second artificial muscle AM2.
- control procedure of the robot device 1 by the control device 100B will be described with reference to FIGS. 12 to 17.
- control procedure of the robot device 1 will be described by taking as an example a case where the hand portion 4 of the robot device 1 is moved to the gripping target and the hand portion 4 grips and transfers the gripping target.
- the control device 100B Prior to the start of operation of the robot arm 2, the control device 100B executes the routine of FIG. 5 in the same manner as the control device 100 (before the start of movement of the hand unit 4) to reach the final target arrival position of the hand unit 4. (X r , y r , z r ) and the target trajectory of the hand unit 4 from the initial position to the target arrival position (x r , y r , z r ) are set. After setting the target arrival position and the target trajectory, the control device 100B repeatedly executes the robot arm control routine shown in FIG. 12 at predetermined time (for example, about 10 ms) in response to an execution instruction by the user.
- the processing of steps S10-S70 in the robot arm control routine of FIG. 12 is the same processing as the processing of steps S10-S70 in the robot arm control routine of FIG.
- FIG. 13 is a flowchart illustrating a procedure for setting the target pressures Ptag1 (i) and Ptag2 (i) by the target pressure setting unit 110B in step S80B.
- the target pressure setting unit 110B first sets the variable i, that is, the joint number to the value 1 (step S801).
- the contraction force calculation unit 108 of the target pressure setting unit 110B has the target torque Ttag (i) for the joint Ji set by the target torque setting unit 105 and the target rigidity of the joint Ji set by the target rigidity setting unit 106.
- Acquire R (i) step S802.
- the contraction rate setting unit 107 of the target pressure setting unit 110B acquires the current joint angle ⁇ i of the joint Ji detected by the corresponding joint angle sensor 7.
- the contraction rate setting unit 107 of the target pressure setting unit 110B that has acquired the joint angle ⁇ i sets the contraction rate Cr1 (i) of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji and the joint Ji.
- the contraction rate Cr2 (i) of each hydraulic actuator M constituting the corresponding second artificial muscle AM2 is calculated (step S803).
- the contraction rate setting unit 107 contracts based on the joint angle ⁇ i of the joint Ji, the specifications of the robot arm 2 (robot device 1) (dimensions of the arm 3 and the like), and the like, as in step S820.
- the rates Cr1 (i) and Cr2 (i) are derived and set.
- the contraction force calculation unit 108 of the target pressure setting unit 110B is the first artificial muscle corresponding to the joint Ji based on the target torque Ttag (i) acquired in step S802 and the target rigidity R (i) of the joint Ji.
- the contraction force (tensile force) Fc1 (i) required for each hydraulic actuator M constituting the muscle AM1 and each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji are required.
- the contraction force (tensile force) Fc2 (i) is calculated (step S804).
- step S804 the contraction force calculation unit 108 solves the simultaneous equations for the target torque Ttag (i), the target rigidity R (i), the contraction force Fc1 (i), and the Fc2 (i) to obtain the target torque Ttag (
- the contraction forces Fc1 (i) and Fc2 (i) corresponding to the target rigidity R (i) of i) and the joint Ji are calculated.
- the target pressure derivation unit 109B of the target pressure setting unit 110B changes the contraction rate Cr1 (i) of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji ⁇ Cr1.
- (I) and the change amount ⁇ Cr2 (i) of the contraction rate Cr2 (i) of each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji are acquired (step S805).
- the amount of change ⁇ Cr1 (i) is the difference between the current value and the previous value (current value-previous value) of the shrinkage rate Cr1 (i) calculated in step S803, that is, the calculation cycle of the shrinkage rate Cr1 (i), that is, FIG.
- the change amount ⁇ Cr2 (i) is obtained by gradually increasing the difference (current value-previous value) between the current value and the previous value of the shrinkage rate Cr2 (i) calculated in step S803 in the execution cycle dt. It is a thing.
- the change amounts ⁇ Cr1 (i) and ⁇ Cr2 (i) are calculated by the shrinkage rate setting unit 107, and the target pressure derivation unit 109B changes the change amounts ⁇ Cr1 (i) and ⁇ Cr2 (from the shrinkage rate setting unit 107). i) Get.
- the target pressure derivation unit 109B is a map for setting the target pressure Ptag1 (i) based on the sign of the change amount ⁇ Cr1 (i), which is the first target pressure setting map and the figure shown by the alternate long and short dash line in FIG.
- Select one of the target pressure setting maps step S806).
- each hydraulic actuator M of the robot device 1 includes a tube T that expands in the radial direction and contracts in the axial direction in response to an increase in the pressure of the hydraulic oil inside.
- each hydraulic actuator M has when the tube T contracts in the axial direction and when it expands in the axial direction (when it returns to the natural length side). It has a so-called hysteresis characteristic that the contraction force generated by and is different. That is, the hydraulic pressure supplied to the tube T that contracts in the axial direction (see the alternate long and short dash line in FIG. 14) and the hydraulic pressure supplied to the tube T that extends in the axial direction (see the alternate long and short dash line in FIG. 14) are the same.
- the first and second target pressure setting maps are tested in advance as maps showing the static characteristics of the hydraulic actuator M for setting the target pressures Ptag1 (i) and Ptag2 (i). ⁇ Prepared after analysis.
- the first target pressure setting map defines the relationship between the contraction rate of the tube T that contracts in the axial direction and the contraction force generated by the tube T for each hydraulic pressure supplied to the tube T of the hydraulic actuator M. There is (see the alternate long and short dash line in FIG. 14).
- the second target pressure setting map defines the relationship between the contraction rate of the tube T extending in the axial direction and the contraction force generated by the tube T for each hydraulic pressure supplied to the tube T of the hydraulic actuator M. (See the two-dot chain line in FIG. 14).
- the first target pressure setting map considers the hysteresis characteristics of the fluid actuator M and sets the target pressures Ptag1 (i) and Ptag2 (i) when the contraction rate and the contraction force are the same. It is created to be larger than the second target pressure setting map.
- step S806 when the target pressure derivation unit 109B has a positive sign of the change amount ⁇ Cr1 (i), that is, when the tube T of each hydraulic actuator M constituting the first artificial muscle AM1 is contracted.
- the first target pressure setting map is selected and the sign of the change amount ⁇ Cr1 (i) is negative, that is, when the tube T of each hydraulic actuator M constituting the first artificial muscle AM1 is extended, the first 2 Select the target pressure setting map.
- step S806 in the target pressure derivation unit 109B, when the sign of the change amount ⁇ Cr2 (i) is positive, that is, the tube T of each hydraulic actuator M constituting the second artificial muscle AM2 is contracted.
- the first target pressure setting map is selected and the sign of the change amount ⁇ Cr2 (i) is negative, that is, when the tube T of each hydraulic actuator M constituting the second artificial muscle AM2 is extended.
- Select the second target pressure setting map when the target pressure derivation unit 109B has a positive sign of the change amount
- the target pressure derivation unit 109B has a shrinkage rate Cr1 (i) calculated in step S803 from the first or second target pressure setting map selected according to the sign of the change amount ⁇ Cr1 (i) in step S804.
- Target pressure Ptag1 (i) of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji by deriving the pressure corresponding to the calculated contraction force Fc1 (i) while performing linear interpolation as appropriate.
- the target pressure derivation unit 109B has the shrinkage rate Cr1 (i) calculated in step S803 from the first or second target pressure setting map selected according to the sign of the change amount ⁇ Cr2 (i).
- the pressure corresponding to the contraction force Fc1 (i) calculated in step S804 is derived while performing linear interpolation as appropriate, and the target pressure of each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji Set to Ptag2 (i).
- the target pressures Ptag1 (i) and Ptag2 are set to the pressures corresponding to the contraction rates Cr1 (i) and Cr2 (i) and the contraction forces Fc1 (i) and Fc2 (i) of the tube T while considering the above-mentioned hysteresis characteristics.
- step S809: NO the target pressure setting unit 110B determines that the variable i is less than the value N + 1 (step S809: NO)
- step S809 NO
- step S809 determines that the variable i is the value N + 1 or more
- step S809 YES
- the control device 100B sets the target pressures Ptag1 (i) and Ptag2 (i), or partially in parallel with step S80B, for each joint J1-J3, the first artificial device 100B.
- FIG. 15 is a flowchart illustrating the estimation procedure of the flow rates Q1 (i) and Q2 (i) in step S85.
- the volume estimation unit 118 of the control device 100B first sets the variable i, that is, the joint number to the value 1 in order to estimate the flow rates Q1 (i) and Q2 (i) (step S851). ).
- the volume estimation unit 118 has the target pressures Ptag1 (i) and Ptag2 (i), that is, the target, for the joint Ji set by the target pressure setting unit 110B at the time of the previous execution of the robot arm control routine of FIG.
- the previous values of the pressures Ptag1 (i) and Ptag2 (i) and the shrinkage rates Cr1 (i) and Cr2 (i) set by the shrinkage rate setting unit 107 in step S803 of FIG. 13 are acquired (step S852). .
- the previous values of the target pressures Ptag1 (i) and Ptag2 (i) are the current hydraulic pressure in the tube T of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji, or the second artificial muscle. It is used to indicate the current hydraulic pressure in the tube T of each hydraulic actuator M constituting AM2.
- the volume estimation unit 118 uses the volume estimation map illustrated in FIG. 16 to obtain the volume V1 (i) of the tube T of each hydraulic actuator M constituting the first artificial muscle AM1 corresponding to the joint Ji.
- the volume V2 (i) of the tube T of each hydraulic actuator M constituting the second artificial muscle AM2 corresponding to the joint Ji is estimated (step S853).
- the volume estimation map is experimentally and analyzed in advance so as to define the relationship between the pressure (internal pressure) of the hydraulic oil in the tube T and the volume of the tube T for each contraction rate of the tube T. It was created through.
- step S853 the volume estimation unit 118 appropriately performs linear interpolation from the volume estimation map, and sets the volume corresponding to the previous value of the target pressure Ptag1 (i) and the shrinkage rate Cr1 (i) acquired in step S852 as the volume V1 ( Derived as i). Further, in step S853, the volume estimation unit 118 sets the volume corresponding to the previous value of the target pressure Ptag2 (i) and the shrinkage rate Cr2 (i) acquired in step S852 while performing linear interpolation as appropriate from the volume estimation map. It is derived as the volume V2 (i).
- step S854 the flow rate estimation unit 119 estimates the current values of the volumes V1 (i) and V2 (i) estimated by the volume estimation unit 118 in step S853, and the volume estimation at the time of the previous execution of the robot arm control routine of FIG.
- step S856 determines that the variable i is the value N + 1 or more (step S856: YES)
- the flow rates of the hydraulic oil supplied to the tube T of each hydraulic actuator M Q1 (i), Q2 step S856: YES). i) The estimation is completed.
- the control device 100B sets the current command value for the solenoid units 15e of the plurality of first and second linear solenoid valves 151 and 152, respectively, by using the current command value setting map illustrated in FIG. 17 (step). S90B).
- the current command value setting map shows the flow rate of the hydraulic oil supplied to the tube T (Q1 (i), Q2 (i)) and the tube for each current value applied to the electromagnetic part 15e.
- the current command value setting map becomes the same target pressure Ptag1 (i), Ptag2 (i) as the flow rate (Q1 (i), Q2 (i)) increases (as the flow rate changes from negative to positive). Created to increase the corresponding current value.
- the current command value setting unit 111B has a current value corresponding to the target pressure Ptag1 (i) set in step S80B from the current command value setting map and the flow rate Q1 (i) estimated in step S85. Is derived while performing linear interpolation as appropriate, and is set to the current command value to each first linear solenoid valve 151 corresponding to each hydraulic actuator M constituting the first artificial muscle AM1. Further, in step S90B, the current command value setting unit 111B corresponds to the target pressure Ptag2 (i) set in step S80B from the current command value setting map and the flow rate Q2 (i) estimated in step S85.
- the current value is derived while performing linear interpolation as appropriate, and is set to the current command value for each second linear solenoid valve 152 corresponding to each hydraulic actuator M constituting the second artificial muscle AM2.
- the current command value derived by the current command value setting unit 111B is given to the valve drive unit 112 of the control device 100B, and the valve drive unit 112 has a plurality of first and second linear solenoids, respectively, based on the current command.
- the valves 151 and 152 are controlled (PWM control) (step S100).
- the current command value to the liquid supply device 10 according to the target torque Ttag (i) is easily and quickly set, and the first and second linears of the liquid supply device 10 are controlled based on the current command value.
- Each of the solenoid valves 151 and 152 produces a hydraulic pressure corresponding to the corresponding target pressure Ptag1 (i) or Ptag2 (i).
- the hydraulic oil regulated by each of the first and second linear solenoid valves 151 and 152 is supplied to the tube T of the corresponding hydraulic actuator M.
- the flow rate control valve adjusts the flow rate of the hydraulic oil and supplies it into the tube T, or the hydraulic pressure supplied to the tube T is detected by the pressure sensor so that the actual hydraulic pressure matches the target pressure.
- the hydraulic pressure supplied to each tube T within a short time from the setting of the target pressures Ptag1 (i) and Ptag2 (i) is applied to the target pressures Ptag1 (i) and Ptag2 (i), as compared with the case of feedback control. It is possible to substantially match i) so that the actual shrinkage rate of each tube T can be made to follow the required value with good responsiveness and high accuracy.
- step S100 the control device 100B temporarily terminates the routine of FIG. 12, and executes the process of step S10 and subsequent steps again according to the arrival of the next execution timing.
- step S40 of FIG. 16 when it is determined by the torque calculation unit 103 that the current position of the hand unit 4 has not substantially changed from the previous position, it is determined after the current position does not substantially change.
- the processes of steps S65 and S70-S100 are executed until the time elapses.
- the control device 100B ends the routine shown in FIG. 12 and executes a hand control routine for causing the hand unit 4 to grip the gripping object. Then, when the gripping target is gripped by the hand unit 4 and the hand control routine is completed, the control device 100B re-executes the routine of FIG. 12 in order to convey the gripping target to the mounting position by the robot arm 2.
- the control device 100B sets the target pressures Ptag1 (i) and Ptag2 (i) of the hydraulic oil supplied to each hydraulic actuator M (step S80B in FIG. 12, FIG. 13), and the target pressure.
- the current command value is set based on Ptag1 (i) and Ptag2 (i) and the flow rates Q1 (i) and Q2 (i) of the hydraulic oil supplied to each hydraulic actuator M (step S90B in FIG. 12).
- Each of the first and second linear solenoid valves 151 and 152 is controlled based on the current command value (step S100 in FIG. 12).
- each The hydraulic oil having a pressure corresponding to the target pressures Ptag1 (i) and Ptag2 (i) can be supplied to the hydraulic actuator M. That is, according to the research and analysis by the present inventors, the current command value is set based on the target pressures Ptag1 (i) and Ptag2 (i) and the flow rates Q1 (i) and Q2 (i).
- the responsiveness of the operation of each hydraulic pressure actuator M Compared with the case where the target pressures Ptag1 (i) and Ptag2 (i) are directly converted into the current command value without considering the flow rates Q1 (i) and Q2 (i), the responsiveness of the operation of each hydraulic pressure actuator M and It has been confirmed that the followability of the hydraulic pressure in each tube T to the target pressures Ptag1 (i) and Ptag2 (i) can be improved.
- the robot device 1 including the control device 100B it is possible to operate a plurality of hydraulic actuators M that are operated by receiving the supply of hydraulic oil with good responsiveness and high accuracy, and the robot arm 2 is responsive and stable. Can be activated.
- each hydraulic actuator M of the robot device 1 includes a tube T to which hydraulic oil is supplied to the inside and contracts in the axial direction while expanding in the radial direction in response to an increase in internal pressure.
- the flow rate estimation unit 119 of the control device 100B calculates the volume change amount (dV1 / dt, dV2 / dt) of the tube T as the flow rates Q1 (i) and Q2 (i) (steps S85 and 14 in FIG. 12).
- the current command value setting unit 111B of the control device 100B has a current command value for each first linear solenoid valve 151 corresponding to the first artificial muscle AM1 based on the target pressure Ptag1 (i) and the flow rate Q1 (i).
- the current command value for each second linear solenoid valve 152 corresponding to the second artificial muscle AM2 based on the target pressure Ptag2 (i) and the flow rate Q2 (i) (step S90B in FIG. 12).
- the current command value is appropriately set according to the flow rates Q1 (i) and Q2 (i) of the hydraulic oil supplied to each hydraulic actuator M, and the first and second linear solenoid valves 151 and 152 are set. It is possible to accurately adjust the pressure of the hydraulic oil supplied to each hydraulic actuator M so as to be the target pressures Ptag1 (i) and Ptag2 (i).
- control device 100B repeatedly executes the robot arm control routine of FIG. 12 at predetermined time (for example, about 10 ms) to set the target pressures Ptag1 (i) and Ptag2 (i). Further, the volume estimation unit 118 of the control device 100B is based on the previous values of the target pressures Ptag1 (i) and Ptag2 (i) and the shrinkage rates Cr1 (i) and Cr2 (i) of the tube T this time. Volumes V1 (i) and V2 (i) are calculated (step S85 in FIG. 12, steps S852 and S853 in FIG. 15).
- the flow rate estimation unit 119 of the control device 100B divides the difference between the current value and the previous value of the volumes V1 (i) and V2 (i) of the tube T by the predetermined time (execution cycle dt of the routine in FIG. 8). Then, the flow rates Q1 (i) and Q2 (i) are calculated (step S85 in FIG. 8 and step S854 in FIG. 15). This makes it possible to appropriately calculate the flow rates Q1 (i) and Q2 (i) of the hydraulic oil supplied to each hydraulic actuator M.
- the target pressure setting unit 110B of the control device 100B sets the target pressures Ptag1 (i) and Ptag2 (i) according to the target torque Ttag (i) indicating the force required for each hydraulic pressure actuator M by the tube T. It is changed between when it contracts in the axial direction and when the tube T expands in the axial direction (steps S805-S807 in FIG. 13). This makes it possible to satisfactorily suppress the deviation between the force (torque) output from each hydraulic actuator M and the required force (torque) due to the hysteresis characteristic.
- the target pressure derivation unit 109B of the target pressure setting unit 110B has the target pressures Ptag1 (i) and Ptag2 based on the contraction rates Cr1 (i) and Cr2 (i) and the contraction forces Fc1 (i) and Fc2 (i). (I) is derived and set (step S807 in FIG. 13). Further, the target pressure derivation unit 109B of the hydraulic oil supplied to the tube T when the changes in the shrinkage rates Cr1 (i) and Cr2 (i) ⁇ Cr1 (i) and ⁇ Cr2 (i) are positive values.
- a first target pressure setting map (first target pressure setting map) that defines the relationship between the contraction rates Cr1 (i) and Cr2 (i) of the tube T that contracts in the axial direction for each pressure and the contraction forces Fc1 (i) and Fc2 (i).
- the target pressures Ptag1 (i) and Ptag2 (i) are set using the constraint) (steps S805-S807 in FIG. 13). Further, the target pressure derivation unit 109B contracts the tube T that extends axially according to the pressure of the hydraulic oil supplied to the tube T when the changes ⁇ Cr1 (i) and ⁇ Cr2 (i) are negative values.
- the target pressure Ptag1 (i), using the second target pressure setting map (second constraint) that defines the relationship between the rates Cr1 (i), Cr2 (i) and the contraction forces Fc1 (i), Fc2 (i), Ptag2 (i) is set (steps S805-S807 in FIG. 13).
- the contraction rate setting unit 107 of the tube T has contraction rates Cr1 (i) and Cr2 (i) based on the target angle of each joint Ji according to the target position of the hand unit 4 (robot device 1). ) May be set.
- the robot apparatus includes a robot body (2) including at least one artificial muscle (M, AM1, AM2) that operates by receiving a fluid supply, and the artificial muscle. It is a robot device (1) including a fluid pressure adjusting device (151, 152) for adjusting the pressure of the fluid supplied to (M, AM1, AM2), and is a hand (4) of the robot main body (2).
- the hand (4) and the target come into contact with each other at the target arrival position of the hand (4) to which a predetermined pressing force (Fp) is applied from the hand (4) to the target after the contact with the target.
- Fp predetermined pressing force
- the artificial The target pressures (Ptag1 (i), Ptag2 (i)) of the fluid supplied to the muscles (M, AM1, AM2) are set, and the target position is the target position before the hand (4) and the target come into contact with each other.
- the fluid pressure is adjusted so that the pressure of the fluid supplied to the artificial muscles (M, AM1, AM2) becomes the target pressure (Ptag1 (i), Ptag2 (i)) until the target arrival position is matched.
- the hand can be brought close to the target to some extent. It is possible to bring the hand of the robot device into contact with the target without reducing the moving speed or detecting the contact between the hand and the target by the sensor. Furthermore, by controlling the fluid pressure adjusting device based on the target pressure based on the difference between the target position according to the target arrival position and the current position of the hand, the artificial muscle is operated with high accuracy and responsiveness to the request. Is possible.
- the hand of the robot body may be a part of the robot device (hand part or the like) or an object gripped by the part, and the target is the object or the mounting surface of the object or the like. It may be.
- control device may set the target arrival position prior to the start of operation of the robot body (2).
- the target arrival position does not necessarily have to be set before the start of operation of the robot body (start of movement of the hand), but may be set before the hand and the target come into contact with each other.
- control device may gradually change the target position to the target arrival position after the current position of the hand (4) does not change.
- the target position while the current position of the hand (4) changes is at least one of the target arrival position and the target speed and target acceleration of the hand (4) according to the target.
- Multiple settings may be made based on the above.
- the plurality of target positions may be set based on the target arrival position and either the target speed or the target acceleration of the hand.
- control device sets the target position while limiting the target acceleration of the hand so as not to exceed a predetermined upper limit acceleration while the current position of the hand (4) changes. It may be set at predetermined time intervals.
- control device determines whether or not the presence of a person is detected around the robot device (1), and the presence of a person is detected around the robot device (1).
- the upper limit acceleration may be made smaller than in the case where the presence of a person is not detected around the robot device (1).
- control device (100, 100B) calculates the tensile force (Ft) for moving the hand (4) from the current position to the target position, and also calculates the tensile force (Ft) based on the tensile force (Ft).
- the target torque setting unit (103) calculates the tensile force (Ft) so as not to exceed a predetermined upper limit value (Fu), and when there is a person around the robot device (1).
- the upper limit value (Fr) may be made smaller than when there is no person around the robot device (1).
- the target torque setting unit (103) is pulled according to a feedback control relational expression including a proportional term obtained by multiplying the difference between the target position and the current position by a gain (gain K px , K py , K pz ).
- the gain (gain K px , K py , K pz ) of the proportional term may be changed according to the target position or the current position of the hand (4). ..
- the hydraulic pressure adjusting device (151, 152) may be one that adjusts the pressure of the liquid supplied to the artificial muscles (M, AM1, AM2) by receiving the supply of current, and the control may be performed.
- the device (100B) has a target pressure (Ptag1 (i), Ptag2 (i)) and a flow rate of the liquid supplied to the artificial muscles (M, AM1, AM2) (Q1 (i), Q2 (i). )
- the current command value may be set, and the hydraulic pressure adjusting device (151, 152) may be controlled based on the current command value.
- the artificial muscle (M) includes a tube (T) to which the liquid is supplied to the inside and contracts in the axial direction while expanding in the radial direction in response to an increase in the pressure inside the artificial muscle (M). good.
- the tube (T) applies the target pressures (Ptag1 (i), Ptag2 (i)) according to the force required for the artificial muscles (M, AM1, AM2). It may be changed between when the tube (T) contracts in the axial direction and when the tube (T) expands in the axial direction.
- the fluid pressure adjusting device includes an electromagnetic part (15e), a spool (15s), a spring (SP) for urging the spool (15s), an input port (15i) to which the fluid is supplied, and an output port (15o). ), A feedback port (15f) communicating with the output port (15o), and a solenoid valve (151, 152) including a drain port (15d) capable of communicating with the input port (15i) and the output port (15o).
- the solenoid valve (151, 152) may be the thrust generated by the solenoid portion (15e), the urging force of the spring (SP), and the feedback port (15f) from the output port (15o). ),
- the pressure of the fluid may be adjusted by balancing the thrust applied to the spool (15s) by the action of the fluid pressure supplied to the spool (15s).
- the robot body (2) may include at least one joint (J1, J2, J3, Ji) and a plurality of links (3, 5), and the artificial muscle (M, AM1) may be included.
- AM2 may relatively rotate the two links (3, 5) connected via the joints (J1, J2, J3, Ji).
- the two links (3, 5) may be relatively rotated by a pair of artificial muscles (M, AM1, AM2) arranged so as to antagonize each other.
- the robot body (2) may be a robot arm (2) having at least one artificial muscle (M, AM1, AM2) and a hand portion (4).
- the control method of the robot device includes a robot body (2) including at least one artificial muscle (M, AM1, AM2) that operates by receiving a fluid supply, and the artificial muscle (M, AM1). , AM2), the control method of the robot device (1) including the fluid pressure adjusting device (151, 152) for adjusting the pressure of the fluid, and the hand (4) of the robot main body (2).
- the artificial muscle The target pressures (Ptag1 (i), Ptag2 (i)) of the fluid supplied to (M, AM1, AM2) are set, and the target position is the target before the hand (4) and the target come into contact with each other.
- the fluid pressure adjusting device so that the pressure of the fluid supplied to the artificial muscles (M, AM1, AM2) becomes the target pressure (Ptag1 (i), Ptag2 (i)) until the arrival position is matched. It controls (151, 152).
- the invention of the present disclosure can be used in the manufacturing industry of robot devices including artificial muscles.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本開示のロボット装置は、手先と対象との接触後に手先から対象に予め定められた押圧力が加えられる手先の目標到達位置を手先と対象とが接触する前に設定すると共に、対象と接触する前の手先の位置から目標到達位置までの軌道を形成する目標位置と手先の現在位置との差に基づいて人工筋肉に供給される流体の目標圧力を設定し、手先と対象とが接触する前から目標位置が目標到達位置に一致するまでの間、人工筋肉に供給される流体の圧力が目標圧力となるように流体圧調整装置を制御する制御装置を含む。これにより、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることが可能となる。
Description
本開示は、流体の供給を受けて作動する人工筋肉を少なくとも1つ含むロボット装置およびその制御方法に関する。
従来、先端にエンドエフェクタが取り付けられたロボットを教示装置により誘導してエンドエフェクタまたはエンドエフェクタに把持された把持対象と作業対象物との接触を伴う作業を教示し、教示した作業を再生するロボットの制御装置が知られている(例えば、特許文献1参照)。この制御装置は、作業の教示時であってエンドエフェクタまたは把持対象が作業対象物に接触していないときに、ロボットを位置制御にて誘導する。また、当該制御装置は、エンドエフェクタまたは把持対象と作業対象物とが接触状態か否かをロボット先端とエンドエフェクタとの間に設けられた力センサの検出値によって判断し、力センサの検出値が所定の基準値以上になると、ロボットの制御方式を位置制御から力制御に切り替えて、ロボットを力制御で誘導する。
しかしながら、上記従来のロボットのように、エンドエフェクタまたは把持対象と作業対象物との接触状態を力センサの検出値によって判断する場合、上記位置制御の態様によっては、エンドエフェクタまたは把持対象から作業対象物に過剰な力が加えられてしまうおそれがある。また、エンドエフェクタまたは把持対象が作業対象物にある程度接近した段階でエンドエフェクタ等の移動速度が低下させられることも考えられるが、このように移動速度を低下させて力センサによりエンドエフェクタ等と作業対象物とが接触したか否かを判定すると、作業時間の長期化による効率の悪化を招いてしまう。
そこで、本開示は、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることを主目的とする。
本開示のロボット装置は、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット本体と、前記人工筋肉に供給される前記流体の圧力を調整する流体圧調整装置とを含むロボット装置であって、前記手先と前記対象との接触後に前記手先から前記対象に予め定められた押圧力が加えられる前記手先の目標到達位置を前記手先と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先の現在位置との差に基づいて前記人工筋肉に供給される流体の目標圧力を設定し、前記手先と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉に供給される流体の圧力が前記目標圧力となるように前記流体圧調整装置を制御する制御装置を含むものである。
本開示のロボット装置では、ロボット本体の手先と対象とが仮想的なバネおよびダンパを介して連結され、当該仮想的なバネおよびダンパが発生する引張力により手先が現在位置から対象まで引っ張られると仮定される。この場合、仮想的なバネおよびダンパによる引張力は、手先の目標位置と現在位置との差にゲインを乗じた比例項と速度項との和として表すことができる。また、手先が対象に接触した状態では、対象に対する手先の速度はゼロになるので、手先が仮想的なバネおよびダンパによる引っ張られることで対象との接触後に当該対象に加える押圧力は、接触後の目標位置と対象の位置(手先と対象との接触位置)とから求めることができる。従って、手先の最終的な目標到達位置は、接触後に手先から対象に加えられる押圧力と、対象の位置(接触位置)とから定めることが可能となる。これを踏まえて、本開示のロボット装置では、少なくとも手先と対象とが接触する前に、手先と対象との接触後に当該手先から対象に予め定められた押圧力が加えられる手先の目標到達位置が設定されると共に、対象と接触する前の手先の位置から目標到達位置までの軌道を形成する目標位置と手先の現在位置との差に基づいて人工筋肉に供給される流体の目標圧力が設定される。そして、手先と対象とが接触する前から目標位置が目標到達位置に一致するまでの間、人工筋肉に供給される流体の圧力が目標圧力となるように流体圧調整装置が制御される。これにより、例えば対象を破壊することなく手先を対象に接触させるように当該対象の位置のばらつき等を考慮して上記押圧力を定めておけば、手先が対象にある程度接近した段階で当該手先の移動速度を低下させたり、センサにより手先と対象との接触を検知したりすることなく、ロボット装置の手先と対象とを接触させることができる。更に、目標到達位置に応じた目標位置と手先の現在位置との差に基づく目標圧力に基づいて流体圧調整装置を制御することで、人工筋肉を要求に対して応答性よく高精度に作動させることが可能となる。この結果、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることが可能となる。なお、ロボット本体の手先は、ロボット装置の一部(ハンド部等)であってもよく、当該一部により把持された物体であってもよく、対象は、当該物体あるいは物体の載置面等であってもよい。
本開示のロボット装置の制御方法は、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット本体と、前記人工筋肉に供給される前記流体の圧力を調整する流体圧調整装置とを含むロボット装置の制御方法であって、前記ロボット本体の手先と前記対象との接触後に前記手先から前記対象に予め定められた押圧力が加えられる前記手先の目標到達位置を前記手先と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先の現在位置との差に基づいて前記人工筋肉に供給される流体の目標圧力を設定し、前記手先と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉に供給される流体の圧力が前記目標圧力となるように前記流体圧調整装置を制御するものである。
かかる方法によれば、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることが可能となる。
次に、図面を参照しながら、本開示の発明を実施するための形態について説明する。
図1は、本開示のロボット装置1を示す概略構成図であり、図2は、ロボット装置1を示す拡大図である。これらの図面に示すロボット装置1は、ロボットアーム(ロボット本体)2と、液体供給装置10と、装置全体を制御する制御装置100とを含む。ロボットアーム2は、複数(本実施形態では、3つ)の関節(ピン結合部)J1,J2,J3と、複数(本実施形態では、3つ)のアーム(リンク)3と、関節J1,J2,J3ごとに例えば偶数個(本実施形態では、4つ)ずつ設けられる人工筋肉としての複数の液圧アクチュエータ(流体アクチュエータ)Mと、先端側のアーム3の手先に取り付けられる把持部としてのハンド部(ロボットハンド)4とを含む多関節アームである。ハンド部4は、対象となる物体(以下、「把持対象」という。)を把持するように制御装置100により制御される。また、液体供給装置10は、制御装置100により制御されて各液圧アクチュエータMに液体としての作動油(作動流体)を給排する。これにより、ロボットアーム2を油圧(液圧)により駆動してハンド部4を所望の位置に移動させることができる。
ロボットアーム2の各液圧アクチュエータMは、図2に示すように、作動油の圧力によって膨張および収縮するチューブTと、当該チューブTを覆う編組スリーブSとを含む、いわゆるマッキベン型の人工筋肉である。チューブTは、高い耐油性をもった例えばゴム材等の弾性材により円筒状に形成されており、当該チューブTの両端部は、封止部材Cにより封止されている。チューブTの基端側(液体供給装置10側、図2中下端側)の封止部材Cには、作動油の出入口IOが形成されている。編組スリーブSは、所定方向に配向された複数のコードを互いに交差するように編み込むことにより円筒状に形成されており、軸方向および径方向に収縮可能である。編組スリーブSを形成するコードとしては、繊維コード、高強度繊維、極細のフィラメントによって構成される金属製コード等を採用することができる。かかる液圧アクチュエータMのチューブT内に上記出入口IOから作動油を供給してチューブT内の作動油の圧力を高めることで、チューブTは、編組スリーブSの作用により径方向に膨張すると共に軸方向に収縮し、内部の作動油の圧力に応じた収縮力を発生する。
図1および図2に示すように、複数のアーム3のうち、最基端側(最も液体供給装置10側)のアーム3は、関節J1を介してリンクとしての支持部材5により回動自在に支持される。また、2つのアーム3同士が、関節J2またはJ3を介して互いに回動自在に連結される。更に、液体供給装置10側の2つのアーム3の先端部(手先側の端部)には、連結部材6が固定されている。図示するように、支持部材5は、最基端側の関節J1に対応した複数(4つ)の液圧アクチュエータMの基端側の封止部材Cを回動自在に支持する。また、各連結部材6は、基端側に位置する関節J1またはJ2に対応した複数(4つ)の液圧アクチュエータMの先端側(手先側)の封止部材Cを回動自在に支持する。更に、各連結部材6は、先端側に位置する関節J2またはJ3に対応した複数(4つ)液圧アクチュエータMの基端側の封止部材Cを回動自在に支持する。
より詳細には、支持部材5は、関節J1に対応した2つの液圧アクチュエータMの基端側の封止部材Cを第1の連結軸を介して回動自在に支持する。また、最基端側のアーム3の連結部材6は、関節J1に対応した当該2つの液圧アクチュエータMの先端側の封止部材Cを第2の連結軸を介して回動自在に支持する。更に、支持部材5は、関節J1に対応した残り2つの液圧アクチュエータMの基端側の封止部材Cを上記第1の連結軸と平行に延びる第3の連結軸を介して回動自在に支持する。また、最基端側のアーム3の連結部材6は、関節J1に対応した当該残り2つの液圧アクチュエータMの先端側の封止部材Cを上記第2の連結軸と平行に延びる第4の連結軸を介して回動自在に支持する。同様に、関節J2またはJ3を介して互いに連結される2つのアーム3の連結部材6も、上述のような複数の連結軸を介して、当該関節J2またはJ3に対応した複数(4つ)の液圧アクチュエータMの対応する封止部材Cを回動自在に支持する。
これにより、関節J1-J3の関節軸から手先側(ハンド部4側)に延びる各アーム3の両側には、液圧アクチュエータMが本実施形態では2つずつ対応するアーム3と平行に配列される。そして、各アーム3の一側に配置される2つの液圧アクチュエータMは、1つの関節J1,J2またはJ3に対応した第1の人工筋肉(一方の拮抗筋)AM1(図3参照)を構成し、各アーム3の他側に配置される2つの液圧アクチュエータMは、当該第1の人工筋肉AM1と対をなす1つの関節J1,J2またはJ3に対応した第2の人工筋肉(他方の拮抗筋)AM2(図3参照)を構成する。ただし、第1および第2の人工筋肉AM1,AM2は、それぞれ単一の液圧アクチュエータMにより構成されてもよく、第1の人工筋肉AM1を構成する液圧アクチュエータMの数と、第2の人工筋肉AM2を構成する液圧アクチュエータMの数とが異なっていてもよい。また、本実施形態において、1つの関節J1,J2またはJ3に対して設けられる複数(4つ)の液圧アクチュエータMは、互いに同一の諸元を有する。ただし、1つの関節J1,J2またはJ3に対応した複数の液圧アクチュエータMの諸元は、必ずしも同一である必要はなく、例えば、第1の人工筋肉AM1を構成する液圧アクチュエータMの諸元と、第2の人工筋肉AM2を構成する液圧アクチュエータMの諸元とが異なっていてもよい。更に、各アーム3は、中空に形成されており、各アーム3の内部には、液体供給管としての複数のホースH(図2における破線参照)が配置される。各ホースHは、対応する液圧アクチュエータMの基端側の封止部材Cに形成された出入口IOに接続され、各液圧アクチュエータMのチューブT内には、ホースHを介して液体供給装置10からの作動油(油圧)が供給される。
従って、制御装置100により液体供給装置10を制御することで、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMのチューブT内の油圧と、第1の人工筋肉AM1と対をなす第2の人工筋肉AM2を構成する2つの液圧アクチュエータMのチューブT内の油圧とを互いに異ならせることができる。これにより、4つの液圧アクチュエータMすなわち対をなす(1組の)第1および第2の人工筋肉AM1,AM2から連結部材6を介して各アーム3に力(回転トルク)を伝達し、支持部材5または基端側のアーム3に対して各アーム3を回動させて関節J1-J3の関節角度を変化させることが可能となる。本実施形態において、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMと、第1の人工筋肉AM1と対をなす第2の人工筋肉AM2を構成する2つの液圧アクチュエータMとは、チューブTが所定量(例えば、自然長の10%程度)だけ軸方向に収縮した状態を初期状態として液体供給装置10からの油圧により拮抗駆動される。
ロボット装置1の液体供給装置10は、図1に示すように、作動油貯留部(液体貯留部)を画成するタンク11と、当該タンク11を上下方向に延びる回動軸(図1における一点鎖線参照)の周りに回動自在に支持するベース部12とを含む。タンク11は、例えば上端および下端が閉鎖された筒体であり、内部に作動油を貯留可能なものである。本実施形態において、ロボットアーム2の支持部材5は、図2に示すように、タンク11の上壁部11uに図示しないボルト等を介して固定される。すなわち、ロボットアーム2は、液体供給装置10のタンク11(上壁部11u)により支持される。
ベース部12は、ロボットアーム2およびタンク11の下方に位置するようにロボット装置1の設置箇所に固定されるか、あるいは図示しない無人搬送車(AGVあるいはAMR)に搭載(固定)される。また、ベース部12は、タンク11を上記回動軸の周りに回動させる図示しない回動ユニットを支持している。これにより、回動ユニットを作動させることで、ロボットアーム2およびタンク11を当該回動軸の周りに一体に回動させることが可能となる。回動ユニットは、液体供給装置10から供給される油圧により駆動される揺動モータであってもよく、電動モータ等を含むものであってもよい。
更に、液体供給装置10は、図3に示すように、タンク11およびベース部12に加えて、液体供給源としてのポンプ13と、タンク11内に配置される図示しないバルブボディと、元圧生成バルブ14と、それぞれ複数の調圧弁(流体圧調整装置)としての第1および第2リニアソレノイドバルブ151,152と、それぞれ複数の供給遮断部としての第1および第2供給遮断弁161,162とを含む。ポンプ13、第1および第2リニアソレノイドバルブ151,152並びに第1および第2供給遮断弁161,162は、何れも制御装置100により制御される。第1および第2リニアソレノイドバルブ151,152と、第1および第2供給遮断弁161,162とは、関節J1,J2,J3ごとにそれぞれ1つずつ設けられる。
ポンプ13は、例えば電動ポンプであり、タンク11内に貯留された作動油を吸引して吐出口から吐出する。ポンプ13は、タンク11内に配置されるポンプ部と、電動モータおよび減速ギヤ機構とを有すると共にタンク11内またはタンク11外に配置される駆動部とを含む。元圧生成バルブ14は、図示しない信号圧生成バルブからの信号圧に応じてポンプ13から吐出される作動油の一部をドレン(調圧)して元圧を生成し、元圧をバルブボディに形成された油路(液体通路)L0に供給する。元圧生成バルブ14の信号圧生成バルブとしては、例えば、制御装置100による通電制御されるリニアソレノイドバルブが用いられる。
第1および第2リニアソレノイドバルブ151,152は、制御装置100により通電制御される電磁部15eやスプール15s、スプール15sを電磁部15e側(図3中上側)に付勢するスプリングSP等を含み、バルブボディ内に配置される。また、第1および第2リニアソレノイドバルブ151,152は、バルブボディの油路L0に連通する入力ポート15iと、入力ポート15iと連通可能な出力ポート15oと、出力ポート15oに連通するフィードバックポート15fと、出力ポート15oと連通可能なドレンポート15dとを含む。
本実施形態において、第1および第2リニアソレノイドバルブ151,152は、電磁部15eに電流が供給される際に開弁する常閉弁であり、各電磁部15eは、印加される電流に応じてスプール15sを軸方向に移動させる。これにより、電磁部15e(コイル)への給電により当該電磁部15eからスプール15sに付与される推力と、スプリングSPの付勢力と、出力ポート15oからフィードバックポート15fに供給された油圧によりスプール15sに作用する電磁部15e側への推力とをバランスさせることで、元圧生成バルブ14(ポンプ13)側から入力ポート15iに供給されて出力ポート15oから流出する作動油を所望の圧力に調圧することができる。また、第1および第2リニアソレノイドバルブ151,152のドレンポート15dは、図3に示すように、それぞれ油路L3を介してタンク11内の作動油貯留部に連通する。
第1および第2供給遮断弁161,162は、互いに同一の構造を有する電磁式スプール弁(電磁弁)であり、図3に示すように、入力ポート16i、第1および第2出力ポート16oa,16obを有するスリーブと、当該スリーブの内部に軸方向に摺動自在(移動自在)に配置される図示しないスプールと、制御装置100により通電制御されてスプールを移動させる電磁部16eと、スプールを電磁部16e側に付勢する図示しないスプリングとをそれぞれ含む。第1供給遮断弁161の入力ポート16iは、バルブボディに形成された油路を介して第1リニアソレノイドバルブ151の出力ポート15oに接続され、第2供給遮断弁162の入力ポート16iは、バルブボディに形成された油路を介して第2リニアソレノイドバルブ152の出力ポート15oに接続される。
また、第1供給遮断弁161の第1出力ポート16oaは、油路L11を介して対応する上記第1の人工筋肉AM1を構成する一方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。更に、第1供給遮断弁161の第2出力ポート16obは、油路L12を介して当該第1の人工筋肉AM1を構成する他方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。また、第2供給遮断弁162の第1出力ポート16oaは、油路L21を介して対応する上記第2の人工筋肉AM2を構成する一方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。更に、第2供給遮断弁162の第2出力ポート16obは、油路L22を介して当該第2の人工筋肉AM2を構成する他方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。
本実施形態において、第1および第2供給遮断弁161,162は、電磁部16eに供給される電流に応じて、完全連通状態、第1部分連通状態、第2部分連通状態および完全遮断状態を選択的に形成する。第1および第2供給遮断弁161,162が完全連通状態を形成した際には、入力ポート16iと第1および第2出力ポート16oa,16obの双方とが連通する。第1および第2供給遮断弁161,162が第1部分連通状態を形成した際には、入力ポート16iと第2出力ポート16obとが連通すると共に入力ポート16iと第1出力ポート16oaとの連通が遮断される。第1および第2供給遮断弁161,162が第2部分連通状態を形成した際には、入力ポート16iと第1出力ポート16oaとが連通すると共に入力ポート16iと第2出力ポート16obとの連通が遮断される。第1および第2供給遮断弁161,162が完全遮断状態を形成した際には、入力ポート16iと第1および第2出力ポート16oa,16obとの連通が遮断される。
ロボット装置1の制御装置100は、CPU、ROM、RAM、入出力インターフェース等を含むマイクロコンピュータや各種ロジックIC等(何れも図示省略)を含む。制御装置100は、第1および第2リニアソレノイドバルブ151,152の上流側で油路L0における作動油の圧力を検出する図示しない元圧センサ、第1、第2リニアソレノイドバルブ151,152並びに第1、第2供給遮断弁161,162の電源の電圧を検出する図示しない電圧センサの検出値等を入力する。制御装置100は、元圧センサにより検出される油路L0における油圧が目標値になるように、ポンプ13をデューティ制御すると共に、元圧生成バルブ14の信号圧生成バルブの電磁部に供給される電流を制御する。
また、制御装置100は、第1および第2リニアソレノイドバルブ151,152から各液圧アクチュエータMに要求に応じた油圧が供給されるように第1および第2リニアソレノイドバルブ151,152への電流指令値を設定し、当該電流指令値に基づいて各電磁部15eに供給される電流を制御する。更に、制御装置100は、ロボット装置1を作動させる間、基本的に、第1および第2供給遮断弁161,162が上述の完全連通状態を形成するように各電磁部16eに供給される電流を制御する。また、制御装置100は、第1リニアソレノイドバルブ151の電磁部15eを流れる電流を検出する電流検出部と、第2リニアソレノイドバルブ152の電磁部15eを流れる電流を検出する電流検出部とを含み(何れも図示省略)、各電流検出部により検出される電流を監視する。
更に、制御装置100は、各液圧アクチュエータMにおける油圧を検出する図示しない圧力センサからの検出値に応じて、第1部分連通状態または第2部分連通状態を形成するように第1および第2供給遮断弁161,162の該当するものを制御する。これにより、破損等により第1および第2リニアソレノイドバルブ151,152の何れかに対応した2つの液圧アクチュエータMの一方から作動油が流出した場合に、当該2つの液圧アクチュエータMの他方に継続して作動油を供給してロボットアーム2の挙動の乱れを抑えつつ、破損した液圧アクチュエータMからの作動油の更なる流出を良好に抑制することが可能となる。また、制御装置100により完全遮断状態を形成するように第1および第2供給遮断弁161,162の該当するものを制御することで、第1または第2リニアソレノイドバルブ151,152からそれに対応した2つの液圧アクチュエータMへの作動油の供給を遮断したり、当該2つの液圧アクチュエータMからの作動油の流出を規制してロボットアーム2の意図しない動作の発生を抑制したりすることができる。
図4は、上述の制御装置100における第1および第2リニアソレノイドバルブ151,152の制御部を示すブロック図である。同図に示すように、制御装置100は、それぞれコンピュータのCPUやROM,RAMといったハードウェアと、当該コンピュータにインストールされた制御プログラムといったソフトウェアとの少なくとも何れか一方により構築される、目標位置設定部101と、現在位置導出部102と、トルク演算部103および重力補償部104を含む目標トルク設定部105と、目標剛性設定部106と、収縮率設定部107、収縮力算出部108および目標圧力導出部109を含む目標圧力設定部110と、電流指令値設定部111と、バルブ駆動部112とを含む。
目標位置設定部101は、ハンド部4の把持対象の位置や、ユーザにより与えられるハンド部4の移動中の目標速度および目標加速度に基づいて、当該ハンド部4の最終的な目標位置である目標到達位置(3次元座標)と、ハンド部4の初期位置から目標到達位置までの軌道であって複数の目標位置すなわち経由位置(3次元座標)を含む目標軌道とを設定する。現在位置導出部102は、ロボットアーム2の関節J1-J3の関節角度θ1,θ2,θ3とロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)とに基づいて、ハンド部4(予め定められた基準点)の現在位置(3次元座標)を導出する。関節J1-J3の関節角度θ1-θ3は、ロボットアーム2に設けられた複数の関節角度センサ7の対応する何れかにより検出される。以下、“i”を関節の番号として(ただし、本実施形態において、i=1,2,3である。)、i番目の関節を“関節Ji”といい、関節Jiの関節角度を“θi”という。
目標トルク設定部105のトルク演算部103は、関節J1-J3ごとに、ハンド部4が現在位置から目標位置まで移動するように関節Jiを介して連結された2つのアーム3(アーム3および支持部材5)を相対的に回動させる関節トルクTj(i)を算出する。目標トルク設定部105の重力補償部104は、関節J1-J3ごとに、関節角度θ1-θ3とロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)とに基づいてロボットアーム2の姿勢を維持するのに必要な重力補償トルクTc(i)を算出する。そして、目標トルク設定部105は、関節トルクTj(i)と重力補償トルクTc(i)との和を、関節Jiを介して連結される2つのアーム3等を相対的に回動させるための関節トルクTj(i)の目標値(目標駆動力)である目標トルクTtag(i)に設定する。
目標剛性設定部106は、少なくともロボット装置1すなわちハンド部4の目標位置に基づいて、関節J1-J3ごとに、関節Jiがもつべき剛性、すなわち関節Jiを介して連結される2つのアーム3等(リンク)を単位角度だけ相対的に回動させるのに必要な力(トルク)であって、当該2つのアーム3等を相対的に回動させようとする外力に対する関節Jiの動きにくさを示す目標剛性R(i)を設定する。より詳細には、目標剛性設定部106は、ハンド部4等を把持対象等まで移動させる際に、当該ハンド部4等と把持対象等との位置関係に応じて目標剛性R(i)を変化させ、ハンド部4等を把持対象等に接触する前に目標剛性R(i)を低下させる。更に、目標剛性設定部106は、ハンド部4の移動速度および加速度の少なくとも何れか一方に応じて目標剛性R(i)を変化させると共に、ロボット装置1の周囲(例えばロボット装置1が配置される室内あるいは柵の内側といったロボットアーム2の動作範囲を含む領域)に人がいる場合、目標剛性R(i)を低下させる。なお、各関節Jiの目標剛性R(i)は、少なくともロボット装置1すなわちハンド部4の現在位置に基づいて設定されてもよい。
目標圧力設定部110の収縮率設定部107は、関節J1-J3ごとに、ハンド部4の現在位置に応じた関節Jiの関節角度θiに基づいて、当該関節Jiに対応した上記第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した上記第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを設定する。収縮率Cr1(i),Cr2(i)は、それぞれ該当する液圧アクチュエータMのチューブTの軸方向における自然長に対する収縮したチューブTの軸長の割合を示し、収縮率=(1-収縮時のチューブTの軸長/チューブTの自然長)×100として算出される。
目標圧力設定部110の収縮力算出部108は、関節J1-J3ごとに、目標トルク設定部105により設定された目標トルクTtag(i)と、目標剛性設定部106により設定された目標剛性R(i)とに基づいて、関節Jiを介して連結された2つのアーム3等を目標トルクTtag(i)で相対的に回動させる際に当該関節Jiに対応した複数(一対)の液圧アクチュエータMに要求される収縮力Fc1(i),Fc2(i)を算出する。収縮力Fc1(i)は、各関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMのチューブTの収縮により発生させるべき力であり、収縮力Fc2(i)は、各関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMのチューブTの収縮により発生させるべき力である。
目標圧力設定部110の目標圧力導出部109は、関節J1-J3ごとに、人工筋肉としての液圧アクチュエータMの静特性から収縮率設定部107により設定された収縮率Cr1(i)と収縮力算出部108により算出された収縮力Fc1(i)とに対応した圧力を導出して第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの目標圧力Ptag1(i)に設定する。また、目標圧力導出部109は、関節J1-J3ごとに、当該静特性から収縮率設定部107により設定された収縮率Cr2(i)と収縮力算出部108により算出された収縮力Fc2(i)とに対応した圧力を導出して第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの目標圧力Ptag2(i)に設定する。
電流指令値設定部111は、目標圧力設定部110により設定された目標圧力Ptag1(i)およびPtag2(i)を第1および第2リニアソレノイドバルブ151,152の電磁部15eへの電流指令値(目標電流)に直接変換する。バルブ駆動部112は、図示しない上述の電流検出部により検出される電流が電流指令値に一致するようにフィードフォワード制御(あるいはフィードフォワード制御およびフィードバック制御)により目標電圧を設定すると共に、目標電圧をPWM信号に変換する。更に、バルブ駆動部112は、PWM信号に基づいて図示しないスイッチング素子(トランジスタ)をスイッチング制御して第1、第2リニアソレノイドバルブ151,152の電磁部15eに電流を印加する。これにより、第1および第2リニアソレノイドバルブ151,152は、目標圧力Ptag1(i)またはPtag2(i)に応じた油圧を生成するように制御される。
続いて、図5から図10を参照しながら、上述のロボット装置1の制御手順について説明する。以下、ロボット装置1のハンド部4を把持対象まで移動させ、ハンド部4に把持対象を把持させて移送させるケースを例にとってロボット装置1の制御手順について説明する。
本実施形態において、ロボット装置1の制御装置100は、ロボットアーム2の手先すなわちハンド部4と把持対象とが仮想的なバネおよびダンパを介して連結され、当該仮想的なバネおよびダンパが発生する引張力Ftによりハンド部4が現在位置から把持対象あるいは当該把持対象の移送先まで引っ張られるとの仮定のもとで設計されている。かかる仮定のもとでは、仮想的なバネおよびダンパによる引張力Ft=(fx,fy,fz)が、ハンド部4(予め定められた基準点)の目標位置(xd(t),yd(t),zd(t))と当該ハンド部4の現在位置(x(t),y(t),z(t))とから、いわゆるPD制御(フィードバック制御)の関係式である次式(1)のように、目標位置と現在位置との差にゲインKpx,KpyまたはKpzを乗じた比例項と、ゲインKvx,KvyまたはKvzを含む速度項との和として表すことができる。
また、ハンド部4が把持対象に接触した状態では、把持対象に対する手先の速度はゼロになるから、上記式(1)より、ハンド部4が仮想的なバネおよびダンパによる引っ張られることで把持対象との接触後に当該把持対象に加える押圧力Fpは、接触後の目標位置と把持対象の位置(ハンド部4と把持対象との接触位置)とから求めることができる。従って、ハンド部4の最終的な目標到達位置(xr,yr,zr)は、接触後にハンド部4から把持対象に加えられる押圧力Fp=(fpx,fpy,fpz)と、把持対象の位置(接触位置)(xo,yo,zo)と、ゲインKpx,Kpy,Kpzとから、次式(2)のように表すことができる。
そして、ロボット装置1では、ロボットアーム2の作動開始に先立って(ハンド部4の移動開始前に)、図5のルーチンが制御装置100の目標位置設定部101により実行され、ハンド部4の最終的な目標到達位置(xr,yr,zr)と、初期位置から目標到達位置(xr,yr,zr)までのハンド部4の目標軌道とが設定される。図5のルーチンの開始に際して、制御装置100の目標位置設定部101は、把持対象の位置(xo,yo,zo)と、ユーザにより与えられているハンド部4の移動中の目標速度および目標加速度を取得する(ステップS1)。把持対象の位置(xo,yo,zo)は、それが予め判明している場合、ロボット装置1のユーザにより制御装置100に入力されてもよく、ロボットアーム2の作動開始前にカメラ等により取得されたデータから導出されたものであってよい。
次いで、目標位置設定部101は、上記式(2)に従って、ハンド部4と把持対象との接触後に当該ハンド部4から把持対象に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置(xr,yr,zr)を設定する(ステップS2)。ロボット装置1において、式(2)における押圧力Fp=(fpx,fpy,fpz)は、把持対象の材質や強度、サイズといった諸元から、当該把持対象を破壊することなくハンド部4を把持対象に接触させるように把持対象の位置(xo,yo,zo)のばらつき等を考慮して予め定められる。更に、目標位置設定部101は、ステップS1にて取得したハンド部4の目標速度および目標加速度と、ステップS2にて設定した目標到達位置(xr,yr,zr)とに基づいて、予め定められた数(複数)の目標位置すなわち経由位置(3次元座標)を含むハンド部4の目標軌道を設定し(ステップS3)、図5のルーチンを終了させる。
また、ロボット装置1では、把持対象の位置に応じた目標到達位置および目標軌道が設定された後、把持対象の移送先(把持対象の載置面)に応じた目標到達位置および目標軌道を設定するために再度図5のルーチンが目標位置設定部101により実行される。この際、目標位置設定部101は、ハンド部4により把持された把持対象(手先)と載置面(対象)との接触後に当該ハンド部4から把持対象を介して載置面(対象)に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置(xr,yr,zr)を設定する。
図6は、目標到達位置および目標軌道が設定された後、制御装置100により実行されるロボットアーム制御ルーチンを例示するフローチャートである。図6のルーチンは、図5のルーチンの完了後、ユーザによる実行指示に応じて、制御装置100により所定時間(例えば10ms程度)おきに繰り返し実行される。
図6のルーチンの開始に際して、制御装置100のトルク演算部103(目標トルク設定部105)および目標剛性設定部106は、それぞれ目標位置設定部101により設定された目標位置を取得する(ステップS10)。ステップS10にて取得される目標位置は、目標軌道における1番目の目標位置または図6のルーチンの前回実行時に取得された目標位置である。また、制御装置100の現在位置導出部102および重力補償部104は、複数の関節角度センサ7により取得された関節J1-J3の関節角度θ1-θ3を取得する(ステップS20)。現在位置導出部102は、取得した関節角度θ1-θ3とロボットアーム2(ロボット装置1)の諸元とに基づいて、ハンド部4の現在位置(3次元座標)を導出し(ステップS30)、導出した現在位置をトルク演算部103に与える。
制御装置100のトルク演算部103(目標トルク設定部105)は、ハンド部4の現在位置が前回位置から変化しているか否か(ハンド部4が移動しているか否か)を判定する(ステップS40)。トルク演算部103は、ハンド部4の現在位置が前回位置から変化していると判定した場合(ステップS40:YES)、更に、当該現在位置が目標位置に実質的に一致しているか否かを判定する(ステップS50)。現在位置が目標位置に実質的に一致していると判定した場合(ステップS50:YES)、トルク演算部103は、ステップS10にて取得した目標位置の次の目標位置を取得する(ステップS60)。当該次の目標位置は、目標剛性設定部106にも与えられ、目標剛性設定部106は、取得した目標位置等に基づいて、各関節Jiの目標剛性R(i)を設定する。また、ハンド部4の現在位置が目標位置に実質的に一致していない場合、ステップS60の処理は、スキップされる。
ステップS50またはS60の処理の後、制御装置100の目標トルク設定部105は、各関節Jiについての目標トルクTtag(i)を設定する(ステップS70)。図7は、ステップS70における目標トルク設定部105による目標トルクTtag(i)の設定手順を例示するフローチャートである。同図に示すように、目標トルク設定部105のトルク演算部103は、まず、ステップS10にて取得したハンド部4の目標位置に基づいて上述のゲインKpx,KpyおよびKpzを設定する(ステップS700)。ステップS700において、トルク演算部103は、ステップS10にて取得した目標位置が予め定められた目標位置(例えば、ハンド部4が減速し始める位置)になるまでゲインKpx,KpyおよびKpzの各々を予め定められた通常値に設定し、ステップS10にて取得した目標位置が予め定められた目標位置になった以降、ゲインKpx,KpyおよびKpzの各々を上記通常値よりも小さい値に設定する。
次いで、トルク演算部103は、ステップS10にて取得したハンド部4の目標位置と、ステップS30にて取得したハンド部4の現在位置とに基づいて、上記式(1)から上述の仮想的なバネおよびダンパによる引張力Ft=(fx,fy,fz)を算出する(ステップS710)。なお、ステップS710では、次式(3)から引張力Ft=(fx,fy,fz)が算出されてもよく、式(1)および式(3)が併用されてもよい。式(3)を用いることで、ロボットアーム2(各関節Ji)の動き出しをよりスムースにすることができる。
また、トルク演算部103は、別途設定される人感フラグを取得し(ステップS720)、人感フラグがオフされているか否かを判定する(ステップS730)。人感フラグは、ロボット装置1の設置箇所あるいは無人搬送車等に配置された少なくとも1つの人感センサ8(図1参照)からの信号に基づいて制御装置100によりオンまたはオフされるものである。すなわち、制御装置100は、当該少なくとも1つの人感センサ8によって当該人感センサ8を中心とした所定範囲内に人の存在が検知されていない場合、人感フラグをオフし、少なくとも1つの人感センサ8にって当該所定範囲内に人の存在が検知された場合、人感フラグをオンする。
トルク演算部103は、人感フラグがオフされていると判定した場合(ステップS730:YES)、第1の力(ベクトル)Fu1を上記引張力Ftの上限値Fuに設定する(ステップS740)。また、トルク演算部103は、人感フラグがオンされていると判定した場合(ステップS730:NO)、上記第1の力Fu1よりも小さい第2の力(ベクトル)Fu2を引張力Ftの上限値Fuに設定する(ステップS745)。ステップS740またはS745の処理の後、トルク演算部103は、ステップS710にて設定した引張力Ftと上限値Fuとの小さい方を引張力Ftに設定(再設定)する(ステップS750)。
更に、トルク演算部103は、次式(4)に示すように、ステップS750にて設定した引張力Ftと次式(5)に示すヤコビ行列とから、関節J1-J3ごとに、ハンド部4が現在位置から目標位置まで移動するように関節Jiを介して連結された2つのアーム3(アーム3および支持部材5)を相対的に回動させる関節トルクTj(i)を算出する(ステップS760)。そして、目標トルク設定部105は、上述のようにしてトルク演算部103により算出された関節トルクTj(i)と、重力補償部104により別途算出された重力補償トルクTc(i)との和を2つのアーム3等を相対的に回動させるための目標トルクTtag(1)-Ttag(3)に設定する(ステップS770)。
ステップS70(ステップS770)にて各関節Jiについての目標トルクTtag(i)が設定されると、制御装置100の目標圧力設定部110は、関節Jiすなわちアーム3ごとに複数の液圧アクチュエータMの目標圧力Ptag1(i)およびPtag2(i)を設定する(ステップS80)。図8は、ステップS80における目標圧力設定部110による目標圧力Ptag1(i)およびPtag2(i)の設定手順を例示するフローチャートである。同図に示すように、目標圧力設定部110は、まず、変数iすなわち関節の番号を値1に設定する(ステップS800)。次いで、目標圧力設定部110の収縮力算出部108は、目標トルク設定部105により設定された関節Jiについての目標トルクTtag(i)と、目標剛性設定部106により設定された関節Jiの目標剛性R(i)とを取得する(ステップS810)。また、ステップS810において、目標圧力設定部110の収縮率設定部107は、対応する関節角度センサ7により検出された関節Jiの現在の関節角度θiを取得する。
関節角度θiを取得した目標圧力設定部110の収縮率設定部107は、関節Jiに対応した上記第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した上記第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを設定する(ステップS820)。ステップS820において、収縮率設定部107は、関節Jiの関節角度θiや、ロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)等に基づいて、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを導出・設定する。
また、目標圧力設定部110の収縮力算出部108は、ステップS810にて取得した目標トルクTtag(i)および関節Jiの目標剛性R(i)に基づいて、関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMに要求される収縮力(引張力)Fc1(i)と、当該関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMに要求される収縮力(引張力)Fc2(i)とを算出する(ステップS830)。ここで、目標トルクTtag(i)と収縮力Fc1(i),Fc2(i)との間には、|Ttag(i)|=|r(Fc1(i)-Fc2(i))|という関係が成立する(ただし、“r”は、換算係数である。)。また、関節Jiの目標剛性R(i)と収縮力Fc1(i),Fc2(i)との間には、R(i)=Fc1(i)+Fc2(i)という関係が成立するとみなすことができる。従って、ステップS830において、収縮力算出部108は、これら2つの関係式から得られる連立方程式を解くことにより、目標トルクTtag(i)および関節Jiの目標剛性R(i)に対応した収縮力Fc1(i),Fc2(i)を算出する。
ステップS820およびS830の処理の後、目標圧力設定部110の目標圧力導出部109は、図9に例示する目標圧力設定マップから収縮率Cr1(i)と収縮力Fc1(i)とに対応した圧力を適宜線形補間を行いながら導出して上記第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの目標圧力Ptag1(i)に設定する(ステップS840)。また、ステップS840において、目標圧力導出部109は、当該目標圧力設定マップから収縮率Cr2(i)と収縮力Fc2(i)とに対応した圧力を導出して上記第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの目標圧力Ptag2(i)に設定する。
図9の目標圧力設定マップは、人工筋肉としての液圧アクチュエータMの静特性を示すものであり、液圧アクチュエータMに供給される油圧ごとに、チューブTの収縮率と当該チューブTが発生する収縮力との関係を規定するように予め実験・解析を経て作成されたものである。このように、チューブTの収縮率Cr1(i),Cr2(i)および収縮力Fc1(i),Fc2(i)に対応した圧力を目標圧力Ptag1(i),Ptag2(i)に設定することで、ロボットアーム2への要求に応じて目標圧力Ptag1(i),Ptag2(i)を精度よく設定することが可能となる。
ステップS840にて目標圧力Ptag1(i)およびPtag2(i)が設定されると、目標圧力設定部110は、変数iをインクリメントし(ステップS850)、変数iが値N+1以上であるか否かを判定する(ステップS860)。値Nは、ロボットアーム2における関節の数を示し、本実施形態では、N=3である。目標圧力設定部110は、変数iが値N+1未満であると判定した場合(ステップS860:NO)、上記ステップS810-S860の処理を再度実行する。目標圧力設定部110により変数iが値N+1以上であると判定されると(ステップS860:YES)、図6に示すように、制御装置100の電流指令値設定部111は、図示しないマップ等を用いて、各関節Jiの目標圧力Ptag1(i)およびPtag2(i)の各々を電流指令値に直接変換する(ステップS90)。電流指令値設定部111により導出された電流指令値は、制御装置100のバルブ駆動部112に与えられ、バルブ駆動部112は、当該電流指令に基づいて、それぞれ複数の第1および第2リニアソレノイドバルブ151,152を制御(PWM制御)する(ステップS100)。
これにより、目標トルクTtag(i)に応じた液体供給装置10への電流指令値が容易かつ速やかに設定され、当該電流指令値に基づいて制御される液体供給装置10の第1および第2リニアソレノイドバルブ151,152の各々は、対応する目標圧力Ptag1(i)またはPtag2(i)に応じた油圧を生成する。更に、第1および第2リニアソレノイドバルブ151,152により調圧された作動油は、第1および第2供給遮断弁161,162を介して対応する液圧アクチュエータMのチューブTに供給される。この結果、流量制御弁により作動油の流量を調整してチューブT内に供給したり、チューブTに供給される油圧を圧力センサにより検出して実油圧が目標圧力に一致するように流量制御弁をフィードバック制御したりする場合に比べて、目標圧力Ptag1(i),Ptag2(i)の設定から短時間のうちに、各チューブTに供給される油圧を当該目標圧力Ptag1(i),Ptag2(i)に実質的に一致させ、各チューブTの実際の収縮率を要求値に応答性よく高精度に追従させることが可能となる。制御装置100は、ステップS100の処理の後、図6のルーチンを一旦終了させ、次の実行タイミングの到来に応じて再度ステップS10以降の処理を実行する。
一方、図6のステップS40にてハンド部4の現在位置が前回位置から実質的に変化していないと判定した場合(ステップS40:NO)、トルク演算部103は、当該現在位置が前回位置から実質的に変化しなくなってから予め定められた比較的短い時間(所定時間)が経過したか否かを判定する(ステップS55)。現在位置が実質的に変化しなくなってから当該所定時間が経過していないと判定した場合(ステップS55:NO)、トルク演算部103は、例えば、上記目標到達位置と現在位置との差と当該所定時間とに基づいてハンド部4の目標位置を設定する(ステップS65)。ステップS65において、トルク演算部103は、例えば、現在位置が実質的に変化しなくなってから上記所定時間が経過する少し前に目標位置が目標到達位置に一致するように当該目標位置を時間の経過と共に一定の割合で変化させる。かかるステップS65の処理の後、上記ステップS70以降の処理が実行される。また、ステップS65にて設定された目標位置は、目標剛性設定部106にも与えられ、目標剛性設定部106は、取得した目標位置等に基づいて、各関節Jiの目標剛性R(i)を設定する。これにより、ハンド部4と把持対象との接触後(または把持対象と載置面との接触後)に、当該ハンド部4から把持対象(または載置面)に上記押圧力Fp以下の力が加えられることになる。
ステップS55にて現在位置が実質的に変化しなくなってから上記所定時間が経過したと判定されると、制御装置100は、図6のルーチンを終了させてハンド部4に把持対象を把持させるためのハンド制御ルーチンを実行する。また、制御装置100の目標位置設定部101は、ハンド部4により把持対象が把持されるまでに、図5のルーチンを実行して把持対象の載置位置に応じた目標到達位置および目標軌道を設定する。更に、ハンド部4により把持対象が把持されてハンド制御ルーチンが完了すると、制御装置100は、ロボットアーム2により把持対象を載置位置まで搬送すべく、図6のルーチンを再度実行する。なお、ステップS40にて否定判断がなされた後には、ハンド部4の目標位置が現在位置から目標到達位置まで所定のレートで変化するように設定されてもよく、目標位置が目標到達位置に一致してから予め定められた時間が経過した段階で図6のルーチンが終了されてもよい。
上述のように、ロボット装置1の制御装置100の目標位置設定部101は、ロボット装置1のハンド部4または当該ハンド部4により把持された把持対象(手先)を把持対象または当該把持対象の載置面(対象)に接触させる際に、ハンド部4と把持対象との接触後または把持対象と載置面との接触後(図10における時刻t2以降)にハンド部4から把持対象または載置面に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置を設定する(図5のステップS2)。すなわち、目標位置設定部101は、図10に示すように、挟持対象等の位置よりも若干先の位置をハンド部4の目標到達位置に設定する。また、制御装置100は、目標到達位置等に基づいて設定される目標軌道を形成する目標位置とハンド部4の現在位置とに基づいてロボットアーム2の各関節Jiについての目標トルクTtag(i)を設定すると共に(図6のステップS70)、目標トルクTtag(i)に基づいて各関節Jiに対応した複数の液圧アクチュエータMの目標圧力Ptag1(i)およびPtag2(i)を設定する(図6のステップS80)。更に、制御装置100は、ハンド部4と把持対象または載置面とが接触する前から目標位置が目標到達位置に一致するまでの間、各液圧アクチュエータMに供給される作動油の圧力が目標圧力Ptag1(i),Ptag2(i)になるように液体供給装置10の第1および第2リニアソレノイドバルブ151,152を制御する(図6のステップS90-S100)。
これにより、例えば把持対象を破壊することなくハンド部4または把持対象(手先)を把持対象または載置面(対象)に接触させるように当該把持対象等の位置のばらつき等を考慮して上記押圧力Fpを定めておけば、ハンド部4等が把持対象等にある程度接近した段階で当該ハンド部4の移動速度を低下させたり、センサによりハンド部4等と把持対象等との接触を検知したりすることなく、ロボット装置1のハンド部4等と把持対象等とを接触させることができる。更に、目標到達位置に応じたハンド部4の目標位置と、当該ハンド部4の現在位置とに基づく目標トルク(目標駆動力)Ttag(i)、より詳細には、目標トルクTtag(i)に基づく目標圧力Ptag1(i)およびPtag2(i)に基づいて液体供給装置10を制御することで、人工筋肉としての各液圧アクチュエータMに供給される油圧を検出するセンサを用いることなく、各液圧アクチュエータMを要求に対して応答性よく高精度に作動させることが可能となる。
また、制御装置100の目標位置設定部(目標到達位置設定部および目標軌道設定部)101は、上記目標到達位置を設定すると共に、当該目標到達位置、ハンド部4の目標速度および目標加速度に基づいて複数の目標位置を含むハンド部4の目標軌道を設定する(図5のステップS1-S3)。更に、目標トルク設定部105は、ロボット装置1のハンド部(手先)4を現在位置から目標位置まで移動させる引張力(駆動力)Ftを算出すると共に、当該引張力Ftに基づいて関節Jiを介して連結された2つのアーム(リンク)3等を相対的に回動させるための目標トルクTtag(i)を設定する(図6のステップS70、図7のステップS700-S770)。また、目標圧力設定部110は、目標トルクTtag(i)に基づいて目標圧力Ptag1(i)およびPtag2(i)を設定する(図6のステップS80)。更に、電流指令値設定部111は、目標圧力Ptag1(i)およびPtag2(i)を液体供給装置10の第1および第2リニアソレノイドバルブ151,152への電流指令値に直接変換する(図6のステップS90)。
これにより、目標トルクTtag(i)から第1および第2リニアソレノイドバルブ151,152への電流指令値を容易かつ速やかに設定して人工筋肉としての各液圧アクチュエータMに供給される油圧を応答性よく制御すると共に、複数の液圧アクチュエータMによって目標軌道を辿るようにロボット装置1のハンド部4を移動させて当該ハンド部4を把持対象に接触させたり、把持対象を載置面に接触させたりすることが可能となる。なお、目標位置設定部101は、目標軌道を設定せず、目標到達位置のみを設定するものであってもよく、この場合、目標トルク設定部105は、目標到達位置と現在位置との差に基づいて目標Ttag(i)を設定するものであってもよい。更に、ロボット装置1の始動開始時に把持対象の位置を正確に取得し得ない場合等には、ハンド部4が把持対象に近づいてから、カメラ等により所定時間おきに取得された把持対象の位置から目標到達位置が当該所定時間おきに導出されてもよい。
また、目標トルク設定部105のトルク演算部103は、予め定められた上限値Fu(Fu1またはFu2)を超えないように引張力Ftを算出する(図7のステップS750)。加えて、トルク演算部103は、図10に示すように、ロボット装置1の周囲(例えばロボット装置1が配置される室内あるいは柵の内側といったロボットアーム2の動作範囲を含む領域)に人がいることが検知されて人感フラグがオンされると(図10における時刻t1および図中二点鎖線参照)、上限値Fuをロボット装置1の周囲に人がいない場合に比べて小さくする(図7のステップS720-S745)。これにより、ロボット装置1のハンド部4が目標軌道に沿って移動する間に、ロボット装置1に人が万が一接触したとしても、人が接触後に受ける力を良好に緩和することが可能となる。
更に、ロボット装置1の制御装置100において、目標位置設定部(目標軌道設定部)101は、図6のステップS40にてハンド部4の現在位置が前回位置から実質的に変化していないと判定されるまで、別途与えられる目標加速度を予め定められた上限加速度を超えないように制限しながら所定時間おきにハンド部4の目標位置を設定するものであってもよい。この場合、当該目標位置設定部101は、ロボット装置1の周囲に人がいる場合、上限加速度をロボット装置1の周囲に人がいない場合に比べて小さくするように構成されるとよい。かかる態様によっても、ロボット装置1のハンド部4が目標軌道に沿って移動する間に、ロボット装置1に人が万が一接触したとしても、人が接触後に受ける力を良好に緩和することが可能となる。
また、上記実施形態において、目標トルク設定部105のトルク演算部103は、目標位置と現在位置との差にゲインKpx,Kpy,Kpzを乗じた比例項を含むフィードバック制御の関係式(1)に従って引張力Ftを算出すると共に、ハンド部4の目標位置に応じて当該ゲインKpx,Kpy,Kpzを変化させる(図7のステップS700)。これにより、ハンド部4の目標軌道に対する追従性や、ハンド部4等から把持対象等に加えられる押圧力Fpの接触後における増加の度合を変化させることが可能となる。
すなわち、ゲインKpx,Kpy,Kpzを大きくした場合、ハンド部4の目標軌道への追従性が向上する一方で、ハンド部4と把持対象との接触後あるいは把持対象と載置面との接触後における押圧力Fpの増加勾配が大きくなる。これに対して、ゲインKpx,Kpy,Kpzを小さくした場合、ハンド部4の目標軌道への追従性が緩やかになるが、ハンド部4と把持対象との接触後あるいは把持対象と載置面との接触後における押圧力Fpの増加勾配を小さくすることができる。従って、上述のように、ハンド部4が把持対象または載置面にある程度接近した段階で、ゲインKpx,Kpy,Kpzをそれまでの値よりも小さくすれば、ロボット装置1の応答性と安全性とをより向上させることができる。なお、図7のステップS700において、ゲインKpx,Kpy,Kpzは、ハンド部4の現在位置に応じて変化させられてもよい。
更に、上記実施形態において、目標トルク設定部105のトルク演算部103は、関節J1-J3ごとに、ロボット装置1のハンド部4を現在位置から目標位置まで移動させる関節トルクTj(i)を算出する。また、目標トルク設定部105の重力補償部104は、関節J1-J3ごとに、ロボットアーム2(ロボット装置1)の姿勢を維持するのに必要な重力補償トルクTc(i)を算出する。更に、目標トルク設定部105は、関節トルクTj(i)と重力補償トルクTc(i)との和を、関節Jiを介して連結される2つのアーム3等を相対的に回動させるための目標トルクTtag(i)に設定する(図6のステップS70、図7のステップS770)。これにより、ロボットアーム2(ロボット装置1)の挙動の乱れを抑制しつつ、複数の液圧アクチュエータMによりロボット装置1のハンド部4を移動させることが可能となる。
また、制御装置100は、少なくともロボット装置1のハンド部4の目標位置に基づいて各関節Jiの目標剛性R(i)を設定する目標剛性設定部106と、ロボット装置1の現在位置に応じた各関節角度θiに基づいて各液圧アクチュエータMの収縮率Cr1(i),Cr2(i)を設定する収縮率設定部107と、目標トルクTtag(i)と目標剛性R(i)とに基づいて関節Jiに対応した複数(一対)の液圧アクチュエータMに要求される収縮力Fc1(i),Fc2(i)を算出する収縮力算出部108と、目標圧力設定マップから収縮率Cr1(i)と収縮力Fc1(i)とに対応した圧力および収縮率Cr2(i)と収縮力Fc2(i)とに対応した圧力を導出して目標圧力Ptag1(i),Ptag2(i)に設定する目標圧力導出部109とを含む。これにより、人工筋肉としての各液圧アクチュエータMの要求に応じて目標圧力Ptag1(i),Ptag2(i)を精度よく設定し、複数の液圧アクチュエータMを含むロボット装置1を応答性よく安定に作動させることが可能となる。
以上説明したように、本開示のロボット装置1は、作動油(流体)の供給を受けて作動する複数の液圧アクチュエータ(人工筋肉)Mを含むロボットアーム(ロボット本体)2と、当該複数の液圧アクチュエータMに供給される作動油の圧力を調整する、それぞれ複数の第1および第2リニアソレノイドバルブ(流体圧調整装置)151,152と、第1および第2リニアソレノイドバルブ151,152を制御する制御装置100とを含む。制御装置100は、ロボットアーム2の作動開始(ハンド部4の移動開始)に先立って、ハンド部4等と把持対象等との接触後にハンド部4から把持対象等に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置を設定する(図5のステップS1-S3)。更に、制御装置100は、ハンド部4の初期位置(把持対象等と接触する前の位置)から目標到達位置までの目標軌道を形成する目標位置とハンド部4の現在位置との差に基づいて各液圧アクチュエータMに供給される作動油の目標圧力Ptag1(i),Ptag2(i)を設定する(図6のステップS80)。そして、制御装置100は、ハンド部4と把持対象等とが接触する前から目標位置が目標到達位置に一致するまでの間、各液圧アクチュエータMに供給される作動油の圧力が目標圧力Ptag1(i),Ptag2(i)となるように液体供給装置10の第1および第2リニアソレノイドバルブ151,152を制御する(図6のステップS90-S100)。
これにより、例えば把持対象を破壊することなくハンド部4等を把持対象等に接触させるように当該把持対象等の位置のばらつき等を考慮して上記押圧力Fpを定めておけば、ハンド部4等が把持対象等にある程度接近した段階で当該ハンド部4の移動速度を低下させたり、センサによりハンド部4等と把持対象等との接触を検知したりすることなく、ロボット装置1のハンド部4等と把持対象等とを接触させることができる。更に、目標到達位置に応じた目標位置と当該ハンド部4の現在位置とに基づく目標トルクTtag(i)、より詳細には、目標トルクTtag(i)に基づく目標圧力Ptag1(i)およびPtag2(i)に基づいて液体供給装置10を制御することで、人工筋肉としての各液圧アクチュエータMに供給される油圧を検出するセンサを用いることなく、各液圧アクチュエータMを要求に対して応答性よく高精度に作動させることが可能となる。この結果、作動油の供給を受けて作動する人工筋肉としての液圧アクチュエータを複数含むロボット装置1のハンド部4等を適正かつ速やかに把持対象等に接触させることが可能となる。
なお、上記ロボット装置1において、目標到達位置は、必ずしもロボットアーム2の作動開始(ハンド部4の移動開始)前に設定される必要はなく、ハンド部4と把持対象等とが接触する前に設定されればよい。すなわち、ハンド部4の移動距離が比較的長いような場合には、例えば位置制御によりハンド部4を把持対象にある程度近接させてから、目標到達位置が設定されてもよい。
また、ロボット装置1において、制御装置100は、ハンド部4の現在位置が変化しなくなった後、当該ハンド部4の目標位置を目標到達位置まで徐々に変化させる(図6のステップS55,S65)。これにより、ハンド部4と把持対象等との接触後に、当該ハンド部4から把持対象等に加えられる力を上記押圧力Fp以下にすることが可能となる。
更に、ロボット装置1において、ハンド部4の現在位置が変化する間(図6のステップS40にて肯定判断がなされる間)の目標位置は、目標到達位置と、把持対象等に応じたハンド部4の目標速度および目標加速度に基づいて複数設定される(図5)。これにより、ハンド部4をスムースかつ安定に把持対象等まで移動させることが可能となる。ただし、複数の目標位置は、目標到達位置と、ハンド部4の目標速度および目標加速度の何れか一方とに基づいて設定されてもよい。
また、制御装置100は、ハンド部4を現在位置から目標位置まで移動させる引張力Ftを算出すると共に、当該引張力Ftに基づいて関節Jiを介して連結された2つのアーム(リンク)3等を相対的に回動させるための目標トルクTtag(i)を設定する目標トルク設定部105と、目標トルクトルクTtag(i)に基づいて目標圧力Ptag1(i)およびPtag2(i)を設定する目標圧力設定部110とを含む。これにより、複数の液圧アクチュエータMによって目標軌道を辿るようにロボットアーム2のハンド部4等を移動させて把持対等象に接触させることが可能となる。
更に、制御装置100の目標トルク設定部105(トルク演算部103)は、予め定められた上限値Fu(Fu1またはFu2)を超えないように引張力Ftを算出すると共に、ロボット装置1の周囲に人がいる場合、上限値Fuをロボット装置1の周囲に人がいない場合に比べて小さくする(図7のステップS720-S750)。これにより、ロボット装置1のハンド部4が目標軌道に沿って移動する間に、ロボット装置1に人が万が一接触したとしても、人が接触後に受ける力を良好に緩和することが可能となる。
更に、目標トルク設定部105(トルク演算部103)は、目標位置と現在位置との差にゲインKpx,Kpy,Kpzを乗じた比例項を含むフィードバック制御の関係式(1)に従って引張力Ftを算出すると共に、ハンド部4の目標位置に応じて当該ゲインKpx,Kpy,Kpzを変化させる(図7のステップS700)。これにより、ハンド部4の目標軌道に対する追従性や、ハンド部4等から把持対象等に加えられる押圧力Fpの接触後における増加の度合を変化させることが可能となる。
また、ロボット装置1は、複数の関節Jiと、複数のリンクとしての複数のアーム3および支持部材5とを含み、液圧アクチュエータMは、関節Jiを介して連結される2つのアーム3等を相対的に回動させる。すなわち、2つのアーム3等は、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMと、当該2つの液圧アクチュエータMと互いに拮抗するように配置された第2の人工筋肉AM2を構成する他の2つの液圧アクチュエータMとにより相対的に回動させられる。これにより、対をなす複数の液圧アクチュエータMによって関節Jiを介して連結された2つのアーム3等の何れか一方を他方に対して応答性よく高精度に回動させることが可能となる。ただし、関節Jiを介して連結された2つのアーム3等に必ずしも対をなす複数の液圧アクチュエータ(人工筋肉)Mが設けられる必要はなく、当該2つのアーム3等には、1つまたは複数の液圧アクチュエータMと、当該液圧アクチュエータMと拮抗するように配置されるスプリングやゴム材等の弾性体とが連結されてもよい。
更に、第1および第2リニアソレノイドバルブ151,152は、電磁部15e、スプール15s、当該スプール15sを付勢するスプリングSP、作動油が供給される入力ポート15i、出力ポート15o、当該出力ポート15oに連通するフィードバックポート15f、および入力ポート15iと出力ポート15oとに連通可能なドレンポート15dを含む。更に、第1および第2リニアソレノイドバルブ151,152は、電磁部15eが発生する推力と、スプリングSPの付勢力と、出力ポート15oからフィードバックポート15fに供給される油圧の作用によりスプール15sに加えられる推力とをバランスさせて作動油の圧力を調圧する。
これにより、人工筋肉としての液圧アクチュエータMに供給される作動油を実圧が目標圧力Ptag1(i),Ptag2(i)になるように精度よく調圧することが可能となる。また、液圧アクチュエータM側に供給される油圧(信号圧または駆動圧)を第1および第2リニアソレノイドバルブ151,152にフィードバックすることで、人工筋肉としての複数の液圧アクチュエータMにより駆動されるロボットアーム2に当該複数の液圧アクチュエータM以外からの外力が加えられたときに、当該外力による液圧アクチュエータMのチューブTの体積変化に応じた油圧の変動を吸収することができる。加えて、当該外力が無くなった後には、速やかに要求に応じた油圧(駆動圧)を液圧アクチュエータMに供給することが可能となる。
ただし、第1および第2リニアソレノイドバルブ151,152の少なくとも何れか1つは、常開弁であってもよい。この場合、当該常開弁は、電磁部からの推力および当該電磁部からの推力と同方向に作用するようにフィードバックポートに供給された液圧による推力を、スプリングの付勢力とバランスさせるものであってもよい。また、リニアソレノイドバルブ151-156の少なくとも何れか1つは、専用のフィードバックポートをもたず、スプールを収容するスリーブの内側で出力圧(駆動圧)をフィードバック圧としてスプールに作用させるように構成されたものであってもよい(例えば、特開2020-41687号公報参照)。
更に、液体供給装置10において、第1および第2リニアソレノイドバルブ151,152の少なくとも何れか1つ(例えば、要求出力(収縮力と収縮速度との積)の最大値がすべての液圧アクチュエータMの中で最大となる液圧アクチュエータMに対応したもの)が、電磁部に供給される電流に応じた信号圧を出力するリニアソレノイドバルブ(あるいはオンオフソレノイドバルブ)と、当該信号圧に応じて作動油を調圧するコントロールバルブとで置き換えられてもよい。この場合、コントロールバルブは、バルブボディ内に配置されるスプールと、当該スプールを付勢するスプリングと、入力ポートと、出力ポートと、フィードバックポートと、信号圧入力ポートと、ドレンポートとを含むものであってもよく、出力圧(駆動圧)をスプールの内部でフィードバック圧として当該スプールに作用させるように構成されたものであってもよい。
また、第1および第2リニアソレノイドバルブ151,152の少なくとも何れか1つは、対応する液圧アクチュエータMに供給される油圧(液圧)が目標圧力になるように制御される流量制御弁で置き換えられてもよい。更に、液体供給装置10から元圧生成バルブ14が省略されてもよい。また、ポンプ13により発生させられた油圧を蓄えるアキュムレータ(蓄圧器)が液体供給装置10に設けられてもよい。更に、液体供給装置10は、水等の作動油以外の液体を液圧アクチュエータMに供給するように構成されてもよい。加えて、上記液体供給装置10から第1および第2リニアソレノイドバルブ151,152が省略されてもよく、複数の液圧アクチュエータMごとに液圧調整装置としてのポンプが設けられてもよい。
更に、上記実施形態において、人工筋肉としての液圧アクチュエータMは、内部に作動油が供給されると共に当該内部の油圧の上昇に応じて径方向に膨張しながら軸方向に収縮するチューブTと、当該チューブTを覆う編組スリーブSとを含むマッキベン型の人工筋肉であるが、ロボット装置1における液圧アクチュエータMの構成は、これに限られるものではない。すなわち、液圧アクチュエータMは、液体が供給された際に径方向に膨張しながら軸方向に収縮するチューブを含むものであればよく、例えば弾性体により形成された内側筒状部材と、弾性体により形成されると共に内側筒状部材の外側に同軸に配置され外側筒状部材と、内側筒状部材と外側筒状部材との間に配置された繊維層とを含む軸方向繊維強化型の液圧アクチュエータ(例えば、特開2011-137516号参照)であってもよい。更に、液圧アクチュエータMは、シリンダおよびピストンを含む液体シリンダであってもよい。加えて、ロボット装置1の人工筋肉は、空気等の気体を作動流体として用いるものであってもよい。
また、ロボット装置1のロボットアーム2は、液圧アクチュエータ(流体アクチュエータ)として揺動モータ(例えば、ハンド部4の根元(手首部)を回転させる揺動モータ)を含むものであってもよい。すなわち、ロボットアーム2(ロボット本体)は、人工筋肉としての液圧アクチュエータと揺動モータとの少なくとも何れか1つを含むものであってもよい。更に、ロボット装置1のロボットアーム2は、液圧アクチュエータとしてエアシリンダや油圧シリンダといった流体圧シリンダを含むものであってもよい。また、ロボット装置1において、タンク11がロボットアーム2といったロボット本体により支持されてもよい。
そして、ロボット装置1は、関節を1つだけ含むものであってもよく、人工筋肉としての液圧アクチュエータMを1つまたは2つだけ含むものであってもよい。また、ロボット装置1は、少なくとも1つの液圧アクチュエータM等とハンド部4とを有するロボットアーム2を含むものに限られず、少なくとも1つの液圧アクチュエータと、例えばドリルビット等の工具や例えばスイッチ等を押圧する押圧部材といったハンド部4以外の要素が手先に取り付けられたロボットアームとを含むものであってもよい。更に、ロボット装置1は、歩行ロボットや、ウェアラブルロボット等であってもよい。
図11は、ロボット装置1に適用可能な他の制御装置100Bを示すブロック図である。なお、制御装置100Bの構成要素のうち、上述の制御装置100と同一の要素については同一の符号を付し、重複する説明を省略する。
図11に示す制御装置100Bも、それぞれコンピュータのCPUやROM,RAMといったハードウェアと、当該コンピュータにインストールされた制御プログラムといったソフトウェアとの少なくとも何れか一方により構築される。同図に示すように、制御装置100Bは、上記制御装置100と同様に、目標位置設定部101、現在位置導出部102、目標トルク設定部105(トルク演算部103および重力補償部104)、目標剛性設定部106、およびバルブ駆動部112を含む。また、制御装置100Bは、収縮率設定部107、収縮力算出部108および上記制御装置100のものとは異なる目標圧力導出部109Bを含む目標圧力設定部110Bと、上記制御装置100のものとは異なる電流指令値設定部111Bと、容積推定部118と、流量推定部119とを含む。
目標圧力設定部110Bの収縮率設定部107は、関節J1-J3ごとに、ハンド部4の現在位置に応じた関節Jiの関節角度θiに基づいて、当該関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMの収縮率Cr2(i)とを設定する。また、目標圧力設定部110Bの収縮力算出部108は、関節J1-J3ごとに、目標トルク設定部105により設定された目標トルクTtag(i)と、目標剛性設定部106により設定された目標剛性R(i)とに基づいて、第1の人工筋肉AM1を構成する各液圧アクチュエータMに要求される収縮力Fc1(i)と、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMに要求される収縮力Fc2(i)とを算出する。目標圧力導出部109Bは、収縮率Cr1(i),Cr2(i)および収縮力Fc1(i),Fc2(i)に基づいて、各液圧アクチュエータMに要求される力を示す目標トルクTtag(i)に応じた目標圧力Ptag1(i),Ptag2(i)を、チューブTが軸方向に収縮するときと、チューブTが軸方向に伸長するときとで変化させるように構成されている。
容積推定部118は、関節J1-J3ごとに、目標圧力設定部110(目標圧力導出部109)により設定(導出)された目標圧力Ptag1(i)の前回値と、収縮率設定部107により設定された収縮率Cr1(i)とに基づいて関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTの容積V1(i)を推定(導出)する。また、容積推定部118は、関節J1-J3ごとに、目標圧力設定部110(目標圧力導出部109)により設定(導出)された目標圧力Ptag2(i)の前回値と、収縮率設定部107により設定された収縮率Cr2(i)とに基づいて関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTの容積V2(i)を推定(導出)する。
流量推定部119は、関節J1-J3ごとに、容積推定部118により推定(導出)された容積V1(i)の前回値と今回値とに基づいて関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q1(i)を推定(算出)する。また、流量推定部119は、関節J1-J3ごとに、容積推定部118により推定(導出)された容積V2(i)の前回値と今回値とに基づいて関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q2(i)を推定(算出)する。
電流指令値設定部111は、目標圧力設定部110により設定された目標圧力Ptag1(i)と、流量推定部119により推定された流量Q1(i)とに基づいて、関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMへの油圧を調整する第1リニアソレノイドバルブ151(電磁部15e)に対する電流指令値(目標電流)を設定する。また、電流指令値設定部111は、目標圧力設定部110により設定された目標圧力Ptag2(i)と、流量推定部119により推定された流量Q2(i)とに基づいて、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMへの油圧を調整する第2リニアソレノイドバルブ152(電磁部15e)に対する電流指令値(目標電流)を設定する。
続いて、図12から図17を参照しながら、上記制御装置100Bによるロボット装置1の制御手順について説明する。ここでも、ロボット装置1のハンド部4を把持対象まで移動させ、ハンド部4に把持対象を把持させて移送させるケースを例にとってロボット装置1の制御手順について説明する。
制御装置100Bは、ロボットアーム2の作動開始に先立って(ハンド部4の移動開始前に)、制御装置100と同様に、図5のルーチンを実行してハンド部4の最終的な目標到達位置(xr,yr,zr)と、初期位置から目標到達位置(xr,yr,zr)までのハンド部4の目標軌道とを設定する。目標到達位置および目標軌道を設定した後、制御装置100Bは、ユーザによる実行指示に応じて、図12に示すロボットアーム制御ルーチンを所定時間(例えば10ms程度)おきに繰り返し実行する。図12のロボットアーム制御ルーチンにおけるステップS10-S70の処理は、図6のロボットアーム制御ルーチンにおけるステップS10-S70の処理と同一の処理である。
図12のロボットアーム制御ルーチンの実行が開始され、ステップS70にて各関節Jiについての目標トルクTtag(i)が設定されると、制御装置100Bの目標圧力設定部110は、関節J1-J3ごとに、第1の人工筋肉AM1を構成する各液圧アクチュエータMの目標圧力Ptag1(i)と、第2の人工筋肉AM2を構成する各液圧アクチュエータMの目標圧力Ptag2(i)とを設定する(ステップS80B)。図13は、ステップS80Bにおける目標圧力設定部110Bによる目標圧力Ptag1(i)およびPtag2(i)の設定手順を例示するフローチャートである。同図に示すように、目標圧力設定部110Bは、まず、変数iすなわち関節の番号を値1に設定する(ステップS801)。次いで、目標圧力設定部110Bの収縮力算出部108は、目標トルク設定部105により設定された関節Jiについての目標トルクTtag(i)と、目標剛性設定部106により設定された関節Jiの目標剛性R(i)とを取得する(ステップS802)。また、ステップS802において、目標圧力設定部110Bの収縮率設定部107は、対応する関節角度センサ7により検出された関節Jiの現在の関節角度θiを取得する。
関節角度θiを取得した目標圧力設定部110Bの収縮率設定部107は、関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMの収縮率Cr2(i)とを算出する(ステップS803)。ステップS803において、収縮率設定部107は、上記ステップS820と同様に、関節Jiの関節角度θiや、ロボットアーム2(ロボット装置1)の諸元(アーム3等の寸法)等に基づいて、収縮率Cr1(i)およびCr2(i)を導出・設定する。
また、目標圧力設定部110Bの収縮力算出部108は、ステップS802にて取得した目標トルクTtag(i)および関節Jiの目標剛性R(i)に基づいて、関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMに要求される収縮力(引張力)Fc1(i)と、当該関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMに要求される収縮力(引張力)Fc2(i)とを算出する(ステップS804)。ステップS804において、収縮力算出部108は、目標トルクTtag(i)、目標剛性R(i)、収縮力Fc1(i)およびFc2(i)についての上記連立方程式を解くことにより、目標トルクTtag(i)および関節Jiの目標剛性R(i)に対応した収縮力Fc1(i),Fc2(i)を算出する。
ステップS804の処理の後、目標圧力設定部110Bの目標圧力導出部109Bは、関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMの収縮率Cr1(i)の変化量ΔCr1(i)と、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMの収縮率Cr2(i)の変化量ΔCr2(i)とを取得する(ステップS805)。変化量ΔCr1(i)は、ステップS803にて算出される収縮率Cr1(i)の今回値と前回値との差(今回値-前回値)を収縮率Cr1(i)の算出周期すなわち図12のロボットアーム制御ルーチンの実行周期dtで徐して得られるものである。また、変化量ΔCr2(i)は、ステップS803にて算出された収縮率Cr2(i)の今回値と前回値との差(今回値-前回値)を当該実行周期dtで徐して得られるものである。本実施形態において、変化量ΔCr1(i)およびΔCr2(i)は、収縮率設定部107により算出され、目標圧力導出部109Bは、当該収縮率設定部107から変化量ΔCr1(i)およびΔCr2(i)を取得する。
更に、目標圧力導出部109Bは、変化量ΔCr1(i)の符号に基づいて、目標圧力Ptag1(i)を設定するためのマップとして、図14に一点鎖線で示す第1目標圧力設定マップおよび図14に二点鎖線で示す第2目標圧力設定マップの一方を選択すると共に、変化量ΔCr2(i)の符号に基づいて、目標圧力Ptag2(i)を設定するためのマップとして第1および第2目標圧力設定マップの一方を選択する(ステップS806)。ここで、ロボット装置1の各液圧アクチュエータMは、内部の作動油の圧力上昇に応じて径方向に膨張しながら軸方向に収縮するチューブTを含む。このため、各液圧アクチュエータMは、チューブT内の油圧および収縮率が同一であっても、当該チューブTが軸方向に収縮するときと軸方向に伸長するとき(自然長側に戻るとき)とで発生する収縮力が異なるという、いわゆるヒステリシス特性を有する。すなわち、軸方向に収縮するチューブTに供給される油圧(図14における一点鎖線参照)と、軸方向に伸長するチューブTに供給される油圧(図14における二点鎖線参照)とが同一であり、かつ軸方向に収縮するチューブTの収縮率と、軸方向に伸長するチューブTの収縮率とが同一であるときには、軸方向に収縮するチューブTが発生する収縮力が、軸方向に伸長するチューブTが発生する収縮力よりも小さくなる。
これを踏まえて、本実施形態では、目標圧力Ptag1(i),Ptag2(i)を設定するための液圧アクチュエータMの静特性を示すマップとして、第1および第2目標圧力設定マップが予め実験・解析を経て用意されている。第1目標圧力設定マップは、液圧アクチュエータMのチューブTに供給される油圧ごとに、軸方向に収縮するチューブTの収縮率と当該チューブTが発生する収縮力との関係を規定するものである(図14における一点鎖線参照)。また、第2目標圧力設定マップは、液圧アクチュエータMのチューブTに供給される油圧ごとに、軸方向に伸長するチューブTの収縮率と当該チューブTが発生する収縮力との関係を規定するものである(図14における二点鎖線参照)。図14からわかるように、第1目標圧力設定マップは、流体アクチュエータMのヒステリシス特性を考慮して、収縮率および収縮力が同一であるときに、目標圧力Ptag1(i),Ptag2(i)を第2目標圧力設定マップに比べて大きくするように作成される。
ステップS806において、目標圧力導出部109Bは、変化量ΔCr1(i)の符号が正である場合、すなわち第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTが収縮している場合、第1目標圧力設定マップを選択し、変化量ΔCr1(i)の符号が負である場合、すなわち第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTが伸長している場合、第2目標圧力設定マップを選択する。また、ステップS806において、目標圧力導出部109Bは、変化量ΔCr2(i)の符号が正である場合、すなわち第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTが収縮している場合、第1目標圧力設定マップを選択し、変化量ΔCr2(i)の符号が負である場合、すなわち第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTが伸長している場合、第2目標圧力設定マップを選択する。
次いで、目標圧力導出部109Bは、変化量ΔCr1(i)の符号に応じて選択した第1または第2目標圧力設定マップからステップS803にて算出された収縮率Cr1(i)とステップS804にて算出された収縮力Fc1(i)とに対応した圧力を適宜線形補間を行いながら導出して関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMの目標圧力Ptag1(i)に設定する(ステップS807)。また、ステップS807において、目標圧力導出部109Bは、変化量ΔCr2(i)の符号に応じて選択した第1または第2目標圧力設定マップからステップS803にて算出された収縮率Cr1(i)とステップS804にて算出された収縮力Fc1(i)とに対応した圧力を適宜線形補間を行いながら導出して関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMの目標圧力Ptag2(i)に設定する。このように、上記ヒステリシス特性を考慮しながらチューブTの収縮率Cr1(i),Cr2(i)および収縮力Fc1(i),Fc2(i)に対応した圧力を目標圧力Ptag1(i),Ptag2(i)に設定することで、ロボットアーム2への要求に応じて目標圧力Ptag1(i),Ptag2(i)を精度よく設定することが可能となる。
ステップS807にて目標圧力Ptag1(i)およびPtag2(i)が設定されると、目標圧力設定部110Bは、変数iをインクリメントし(ステップS808)、変数iが値N+1(ここでは、N=3)以上であるか否かを判定する(ステップS809)。目標圧力設定部110Bは、変数iが値N+1未満であると判定した場合(ステップS809:NO)、上記ステップS802-S809の処理を再度実行する。また、目標圧力設定部110Bにより変数iが値N+1以上であると判定されると(ステップS809:YES)、各液圧アクチュエータMの目標圧力Ptag1(i),Ptag2(i)の設定が完了する。
更に、制御装置100Bは、図12に示すように、目標圧力Ptag1(i),Ptag2(i)の設定後、あるいはステップS80Bと一部並行して、関節J1-J3ごとに、第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q1(i)と、第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q2(i)とを推定(導出)する(ステップS85)。図15は、ステップS85における流量Q1(i),Q2(i)の推定手順を例示するフローチャートである。同図に示すように、制御装置100Bの容積推定部118は、流量Q1(i),Q2(i)を推定するために、まず、変数iすなわち関節の番号を値1に設定する(ステップS851)。
ステップS851の処理の後、容積推定部118は、図12のロボットアーム制御ルーチンの前回実行時に目標圧力設定部110Bにより設定された関節Jiについての目標圧力Ptag1(i)およびPtag2(i)すなわち目標圧力Ptag1(i),Ptag2(i)の前回値と、図13のステップS803にて収縮率設定部107により設定された収縮率Cr1(i)およびCr2(i)とを取得する(ステップS852)。目標圧力Ptag1(i),Ptag2(i)の前回値は、それぞれ関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブT内の現在の油圧または第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブT内の現在の油圧を示すものとして用いられる。
更に、容積推定部118は、図16に例示する容積推定マップを用いて、関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTの容積V1(i)と、関節Jiに対応した第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTの容積V2(i)とを推定する(ステップS853)。容積推定マップは、図16に示すように、チューブTの収縮率ごとに、チューブT内の作動油の圧力(内圧)と、当該チューブTの容積との関係を規定するように予め実験・解析を経て作成されたものである。ステップS853において、容積推定部118は、容積推定マップから適宜線形補間を行いながらステップS852にて取得した目標圧力Ptag1(i)の前回値および収縮率Cr1(i)に対応した容積を容積V1(i)として導出する。また、ステップS853において、容積推定部118は、容積推定マップから適宜線形補間を行いながらステップS852にて取得した目標圧力Ptag2(i)の前回値および収縮率Cr2(i)に対応した容積をとして容積V2(i)として導出する。
容積V1(i),V2(i)が推定されると、流量推定部119により関節Jiに対応した第1の人工筋肉AM1を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q1(i)と、第2の人工筋肉AM2を構成する各液圧アクチュエータMのチューブTに供給される作動油の流量Q2(i)とが推定される(ステップS854)。ステップS854において、流量推定部119は、ステップS853にて容積推定部118により推定された容積V1(i),V2(i)の今回値と、図12のロボットアーム制御ルーチンの前回実行時に容積推定部118により推定された容積V1(i),V2(i)すなわち容積V1(i),V2(i)の前回値とを取得する。更に、ステップS854において、流量推定部119は、容積V1(i)の今回値から前回値を減じた値をロボットアーム制御ルーチンの実行周期dt(所定時間)で除した値(容積変化量dV1/dt={今回V1(i)-前回V1(i)}/dt)を流量Q1(i)として導出し、容積V2(i)の今回値から前回値を減じた値をロボットアーム制御ルーチンの実行周期dtで除した値(容積変化量dV2/dt={今回V2(i)-前回V2(i)}/dt)を流量Q2(i)として導出する。
流量Q1(i),Q2(i)を推定すると、流量推定部119は、変数iをインクリメントし(ステップS855)、変数iが値N+1(ここでは、N=3)以上であるか否かを判定する(ステップS856)。流量推定部119により変数iが値N+1未満であると判定された場合(ステップS856:NO)、容積推定部118および流量推定部119により上記ステップS852-S856の処理が再度実行される。また、流量推定部119により変数iが値N+1以上であると判定されると(ステップS856:YES)、各液圧アクチュエータMのチューブTに供給される作動油の流量Q1(i),Q2(i)の推定が完了する。
図12に示すように、ステップS80Bにて目標圧力Ptag1(i),Ptag2(i)が設定され、かつステップS85にて流量Q1(i),Q2(i)が推定されると、制御装置100Bの電流指令値設定部111Bは、図17に例示する電流指令値設定マップを用いて、それぞれ複数の第1および第2リニアソレノイドバルブ151,152の電磁部15eに対する電流指令値を設定する(ステップS90B)。電流指令値設定マップは、図17に示すように、電磁部15eに印加される電流値ごとに、チューブTに供給される作動油の流量(Q1(i),Q2(i))と、チューブT内の作動油の圧力(目標圧力Ptag1(i),Ptag2(i))との関係を規定するように予め実験・解析を経て作成されたものである。図17に示すように、電流指令値設定マップは、チューブTに供給されるべき作動油の圧力すなわち目標圧力Ptag1(i),Ptag2(i))が高いほど、電流値を大きくすると共に、チューブTに作動油が供給されるとき(流量が正であるとき)に、チューブTから作動油が流出するとき(流量が負であるとき)に比べて、同一の目標圧力Ptag1(i),Ptag2(i))に対応した電流値を大きくするように作成される。また、電流指令値設定マップは、流量(Q1(i),Q2(i))が増加するに従って(流量が負から正になるに従って)同一の目標圧力Ptag1(i),Ptag2(i))に対応した電流値を大きくするように作成される。
ステップS90Bにおいて、電流指令値設定部111Bは、電流指令値設定マップからステップS80Bにて設定された目標圧力Ptag1(i)とステップS85にて推定された流量Q1(i)とに対応した電流値を適宜線形補間を行いながら導出して第1の人工筋肉AM1を構成する各液圧アクチュエータMに対応した各第1リニアソレノイドバルブ151への電流指令値に設定する。また、ステップS90Bにおいて、電流指令値設定部111Bは、電流指令値設定マップからステップS80Bにて設定された目標圧力Ptag2(i)とステップS85にて推定された流量Q2(i)とに対応した電流値を適宜線形補間を行いながら導出して第2の人工筋肉AM2を構成する各液圧アクチュエータMに対応した各第2リニアソレノイドバルブ152への電流指令値に設定する。電流指令値設定部111Bにより導出された電流指令値は、制御装置100Bのバルブ駆動部112に与えられ、バルブ駆動部112は、当該電流指令に基づいて、それぞれ複数の第1および第2リニアソレノイドバルブ151,152を制御(PWM制御)する(ステップS100)。
これにより、目標トルクTtag(i)に応じた液体供給装置10への電流指令値が容易かつ速やかに設定され、当該電流指令値に基づいて制御される液体供給装置10の第1および第2リニアソレノイドバルブ151,152の各々は、対応する目標圧力Ptag1(i)またはPtag2(i)に応じた油圧を生成する。更に、第1および第2リニアソレノイドバルブ151,152の各々により調圧された作動油は、対応する液圧アクチュエータMのチューブTに供給される。この結果、流量制御弁により作動油の流量を調整してチューブT内に供給したり、チューブTに供給される油圧を圧力センサにより検出して実油圧が目標圧力に一致するように流量制御弁をフィードバック制御したりする場合に比べて、目標圧力Ptag1(i),Ptag2(i)の設定から短時間のうちに、各チューブTに供給される油圧を当該目標圧力Ptag1(i),Ptag2(i)に実質的に一致させ、各チューブTの実際の収縮率を要求値に応答性よく高精度に追従させることが可能となる。
制御装置100Bは、ステップS100の処理の後、図12のルーチンを一旦終了させ、次の実行タイミングの到来に応じて再度ステップS10以降の処理を実行する。一方、図16のステップS40にて、トルク演算部103によりハンド部4の現在位置が前回位置から実質的に変化していないと判定されると、現在位置が実質的に変化しなくなってから所定時間が経過するまで、ステップS65,S70-S100の処理を実行する。更に、制御装置100Bは、現在位置が実質的に変化しなくなってから所定時間が経過すると、図12のルーチンを終了させ、ハンド部4に把持対象を把持させるためのハンド制御ルーチンを実行する。そして、ハンド部4により把持対象が把持されてハンド制御ルーチンが完了すると、制御装置100Bは、ロボットアーム2により把持対象を載置位置まで搬送すべく、図12のルーチンを再度実行する。
上述のように、制御装置100Bは、各液圧アクチュエータMに供給される作動油の目標圧力Ptag1(i),Ptag2(i)を設定すると共に(図12のステップS80B、図13)、目標圧力Ptag1(i),Ptag2(i)と各液圧アクチュエータMに供給される作動油の流量Q1(i),Q2(i)とに基づいて電流指令値を設定し(図12のステップS90B)、電流指令値に基づいて第1および第2リニアソレノイドバルブ151,152の各々を制御する(図12のステップS100)。これにより、チューブTに供給される作動油の流量Q1(i),Q2(i)の過不足により人工筋肉としての各液圧アクチュエータMの動作の応答性が悪化するのを抑制しつつ、各液圧アクチュエータMに目標圧力Ptag1(i),Ptag2(i)に応じた圧力の作動油を供給することができる。すなわち、本発明者等の研究・解析によれば、目標圧力Ptag1(i),Ptag2(i)と流量Q1(i),Q2(i)とに基づいて電流指令値を設定することで、当該流量Q1(i),Q2(i)を考慮することなく目標圧力Ptag1(i),Ptag2(i)を電流指令値に直接変換する場合に比べて、各液圧アクチュエータMの動作の応答性や目標圧力Ptag1(i),Ptag2(i)に対する各チューブT内の油圧の追従性を向上させ得ることが確認されている。この結果、制御装置100Bを含むロボット装置1では、作動油の供給を受けて作動する複数の液圧アクチュエータMを応答性よく高精度に作動させることが可能となり、ロボットアーム2を応答性よく安定に作動させることができる。
また、ロボット装置1の各液圧アクチュエータMは、内部に作動油が供給されると共に内部の圧力上昇に応じて径方向に膨張しながら軸方向に収縮するチューブTを含む。更に、制御装置100Bの流量推定部119は、チューブTの容積変化量(dV1/dt,dV2/dt)を流量Q1(i),Q2(i)として算出する(図12のステップS85、図14)。また、制御装置100Bの電流指令値設定部111Bは、目標圧力Ptag1(i)と流量Q1(i)とに基づいて第1の人工筋肉AM1に対応した各第1リニアソレノイドバルブ151に対する電流指令値を設定すると共に、目標圧力Ptag2(i)と流量Q2(i)とに基づいて第2の人工筋肉AM2に対応した各第2リニアソレノイドバルブ152に対する電流指令値を設定する(図12のステップS90B)。これにより、各液圧アクチュエータMに供給される作動油の流量Q1(i),Q2(i)に応じて電流指令値を適正に設定すると共に、第1および第2リニアソレノイドバルブ151,152の各々によって各液圧アクチュエータMに供給される作動油の圧力を目標圧力Ptag1(i),Ptag2(i)になるように精度よく調整することが可能となる。
更に、制御装置100Bは、図12のロボットアーム制御ルーチンを所定時間(例えば10ms程度)おきに繰り返し実行して目標圧力Ptag1(i),Ptag2(i)を設定する。また、制御装置100Bの容積推定部118は、目標圧力Ptag1(i),Ptag2(i)の前回値と、チューブTの収縮率Cr1(i),Cr2(i)とに基づいてチューブTの今回の容積V1(i),V2(i)を算出する(図12のステップS85、図15のステップS852,S853)。更に、制御装置100Bの流量推定部119は、チューブTの容積V1(i),V2(i)の今回値と前回値との差を当該所定時間(図8のルーチンの実行周期dt)で除して流量Q1(i),Q2(i)を算出する(図8のステップS85、図15のステップS854)。これにより、各液圧アクチュエータMに供給される作動油の流量Q1(i),Q2(i)を適正に算出可能となる。
また、制御装置100Bの目標圧力設定部110Bは、各液圧アクチュエータMに要求される力を示す目標トルクTtag(i)に応じた目標圧力Ptag1(i),Ptag2(i)を、チューブTが軸方向に収縮するときと、チューブTが軸方向に伸長するときとで変化させる(図13のステップS805-S807)。これにより、上記ヒステリシス特性に起因して各液圧アクチュエータMから出力される力(トルク)と要求されている力(トルク)とがズレてしまうのを良好に抑制することが可能となる。
更に、目標圧力設定部110Bの目標圧力導出部109Bは、収縮率Cr1(i),Cr2(i)と収縮力Fc1(i),Fc2(i)とに基づいて目標圧力Ptag1(i),Ptag2(i)を導出・設定する(図13のステップS807)。また、目標圧力導出部109Bは、収縮率Cr1(i),Cr2(i)の変化量ΔCr1(i),ΔCr2(i)が正の値であるときに、チューブTに供給される作動油の圧力ごとに軸方向に収縮するチューブTの収縮率Cr1(i),Cr2(i)と収縮力Fc1(i),Fc2(i)との関係を規定する第1目標圧力設定マップ(第1の制約)を用いて目標圧力Ptag1(i),Ptag2(i)を設定する(図13のステップS805-S807)。更に、目標圧力導出部109Bは、変化量ΔCr1(i),ΔCr2(i)が負の値であるときに、チューブTに供給される作動油の圧力ごとに軸方向に伸長するチューブTの収縮率Cr1(i),Cr2(i)と収縮力Fc1(i),Fc2(i)との関係を規定する第2目標圧力設定マップ(第2の制約)を用いて目標圧力Ptag1(i),Ptag2(i)を設定する(図13のステップS805-S807)。これにより、液圧アクチュエータMのヒステリシス特性による影響を低減しながら、目標圧力Ptag1(i),Ptag2(i)を適正に設定することが可能となる。なお、ロボット装置1において、収縮率設定部107は、ハンド部4(ロボット装置1)の目標位置に応じた各関節Jiの目標角度に基づいてチューブTの収縮率Cr1(i),Cr2(i)を設定するものであってもよい。
〔発明を実施するための形態のまとめ〕
ここまで説明したように、本開示の実施形態に係るロボット装置は、流体の供給を受けて作動する少なくとも1つの人工筋肉(M,AM1,AM2)を含むロボット本体(2)と、前記人工筋肉(M,AM1,AM2)に供給される前記流体の圧力を調整する流体圧調整装置(151,152)とを含むロボット装置(1)であって、前記ロボット本体(2)の手先(4)と前記対象との接触後に前記手先(4)から前記対象に予め定められた押圧力(Fp)が加えられる前記手先(4)の目標到達位置を前記手先(4)と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先(4)の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先(4)の現在位置との差に基づいて前記人工筋肉(M,AM1,AM2)に供給される流体の目標圧力(Ptag1(i),Ptag2(i))を設定し、前記手先(4)と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉(M,AM1,AM2)に供給される流体の圧力が前記目標圧力(Ptag1(i),Ptag2(i))となるように前記流体圧調整装置(151,152)を制御する制御装置(100,100B)を含むものである。
ここまで説明したように、本開示の実施形態に係るロボット装置は、流体の供給を受けて作動する少なくとも1つの人工筋肉(M,AM1,AM2)を含むロボット本体(2)と、前記人工筋肉(M,AM1,AM2)に供給される前記流体の圧力を調整する流体圧調整装置(151,152)とを含むロボット装置(1)であって、前記ロボット本体(2)の手先(4)と前記対象との接触後に前記手先(4)から前記対象に予め定められた押圧力(Fp)が加えられる前記手先(4)の目標到達位置を前記手先(4)と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先(4)の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先(4)の現在位置との差に基づいて前記人工筋肉(M,AM1,AM2)に供給される流体の目標圧力(Ptag1(i),Ptag2(i))を設定し、前記手先(4)と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉(M,AM1,AM2)に供給される流体の圧力が前記目標圧力(Ptag1(i),Ptag2(i))となるように前記流体圧調整装置(151,152)を制御する制御装置(100,100B)を含むものである。
これにより、例えば対象を破壊することなく手先を対象に接触させるように当該対象の位置のばらつき等を考慮して上記押圧力を定めておけば、手先が対象にある程度接近した段階で当該手先の移動速度を低下させたり、センサにより手先と対象との接触を検知したりすることなく、ロボット装置の手先と対象とを接触させることができる。更に、目標到達位置に応じた目標位置と手先の現在位置との差に基づく目標圧力に基づいて流体圧調整装置を制御することで、人工筋肉を要求に対して応答性よく高精度に作動させることが可能となる。この結果、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることが可能となる。なお、ロボット本体の手先は、ロボット装置の一部(ハンド部等)であってもよく、当該一部により把持された物体であってもよく、対象は、当該物体あるいは物体の載置面等であってもよい。
また、前記制御装置(100,100B)は、前記ロボット本体(2)の作動開始に先立って前記目標到達位置を設定するものであってもよい。ただし、目標到達位置は、必ずしもロボット本体の作動開始(手先の移動開始)前に設定される必要はなく、手先と対象とが接触する前に設定されればよい。
更に、前記制御装置(100,100B)は、前記手先(4)の前記現在位置が変化しなくなった後、前記目標位置を前記目標到達位置まで徐々に変化させるものであってもよい。
これにより、手先と対象との接触後に、当該手先から対象に加えられる力を上記押圧力以下にすることが可能となる。
また、前記手先(4)の前記現在位置が変化する間の前記目標位置は、前記目標到達位置と、前記対象に応じた前記手先(4)の目標速度および目標加速度の少なくとも何れか一方とに基づいて複数設定されてもよい。ただし、複数の目標位置は、目標到達位置と、手先の目標速度および目標加速度の何れか一方とに基づいて設定されてもよい。
更に、前記制御装置(100,100B)は、前記手先(4)の前記現在位置が変化する間、前記手先の目標加速度を予め定められた上限加速度を超えないように制限しながら前記目標位置を所定時間おきに設定するものであってもよい。
また、前記制御装置(100,100B)は、前記ロボット装置(1)の周囲で人の存在が検知されたか否かを判定し、前記ロボット装置(1)の周囲で人の存在が検知された場合、前記上限加速度を前記ロボット装置(1)の周囲で人の存在が検知されていない場合に比べて小さくするものであってもよい。
これにより、ロボット装置の手先が目標軌道に沿って移動する間に、ロボット装置に人が万が一接触したとしても、人が接触後に受ける力を良好に緩和することが可能となる。
更に、前記制御装置(100,100B)は、前記手先(4)を前記現在位置から前記目標位置まで移動させる引張力(Ft)を算出すると共に、前記引張力(Ft)に基づいて前記2つのリンク(3,5)を相対的に回動させるための目標トルク(Ttag(i))を設定する目標トルク設定部(103)と、前記目標トルク(Ttag(i)に基づいて前記目標圧力(Ptag1(i),Ptag2(i))を設定する目標圧力設定部(110,110B)とを含むものであってもよい。
これにより、人工筋肉によって目標位置により形成される軌道を辿るようにロボット本体の手先を移動させて対等に接触させることが可能となる。
また、前記目標トルク設定部(103)は、予め定められた上限値(Fu)を超えないように前記引張力(Ft)を算出すると共に、前記ロボット装置(1)の周囲に人がいる場合、前記上限値(Fr)を前記ロボット装置(1)の周囲に人がいない場合に比べて小さくするものであってもよい。
これにより、ロボット装置の手先が目標軌道に沿って移動する間に、ロボット装置に人が万が一接触したとしても、人が接触後に受ける力を良好に緩和することが可能となる。
更に、前記目標トルク設定部(103)は、前記目標位置と前記現在位置との差にゲイン(ゲインKpx,Kpy,Kpz)を乗じた比例項を含むフィードバック制御の関係式に従って前記引張力(Ft)を算出すると共に、前記手先(4)の前記目標位置または前記現在位置に応じて前記比例項のゲイン(ゲインKpx,Kpy,Kpz)を変化させるものであってもよい。
これにより、手先の目標軌道に対する追従性や、手先から対象に加えられる押圧力の接触後における増加の度合を変化させることが可能となる。
また、前記液圧調整装置(151,152)は、電流の供給を受けて前記人工筋肉(M,AM1,AM2)に供給される前記液体の圧力を調整するものであってもよく、前記制御装置(100B)は、前記目標圧力(Ptag1(i),Ptag2(i))と、前記人工筋肉(M,AM1,AM2)に供給される前記液体の流量(Q1(i),Q2(i))とに基づいて電流指令値を設定し、前記電流指令値に基づいて前記液圧調整装置(151,152)を制御するものであってもよい。
これにより、流量の過不足により人工筋肉の動作の応答性が悪化するのを抑制しつつ、人工筋肉に要求に応じた圧力の液体を供給することができるので、液体の供給を受けて作動する人工筋肉を応答性よく高精度に作動させることが可能となる。
更に、前記人工筋肉(M)は、内部に前記液体が供給されると共に前記内部の圧力の上昇に応じて径方向に膨張しながら軸方向に収縮するチューブ(T)を含むものであってもよい。
また、前記制御装置(100B)は、前記人工筋肉(M,AM1,AM2)に要求される力に応じた前記目標圧力(Ptag1(i),Ptag2(i))を、前記チューブ(T)が前記軸方向に収縮するときと、前記チューブ(T)が前記軸方向に伸長するときとで変化させるものであってもよい。
これにより、ヒステリシス特性に起因して人工筋肉から出力される力(トルク)と要求されている力(トルク)とがズレてしまうのを良好に抑制することが可能となる。
更に、前記流体圧調整装置は、電磁部(15e)、スプール(15s)、前記スプール(15s)を付勢するスプリング(SP)、前記流体が供給される入力ポート(15i)、出力ポート(15o)、前記出力ポート(15o)に連通するフィードバックポート(15f)、および前記入力ポート(15i)と前記出力ポート(15o)とに連通可能なドレンポート(15d)を含むソレノイドバルブ(151,152)であってもよく、前記ソレノイドバルブ(151,152)は、前記電磁部(15e)が発生する推力と、前記スプリング(SP)の付勢力と、前記出力ポート(15o)から前記フィードバックポート(15f)に供給される流体圧の作用により前記スプール(15s)に加えられる推力とをバランスさせて前記流体の圧力を調整するものであってもよい。
また、前記ロボット本体(2)は、少なくとも1つの関節(J1,J2,J3,Ji)と、複数のリンク(3,5)とを含むものであってもよく、前記人工筋肉(M,AM1,AM2)は、前記関節(J1,J2,J3,Ji)を介して連結される2つの前記リンク(3,5)を相対的に回動させるものであってもよい。
更に、前記2つの前記リンク(3,5)は、互いに拮抗するように配置された一対の前記人工筋肉(M,AM1,AM2)により相対的に回動させられてもよい。
また、前記ロボット本体(2)は、前記少なくとも1つの人工筋肉(M,AM1,AM2)と、ハンド部(4)とを有するロボットアーム(2)であってもよい。
本開示の実施形態に係るロボット装置の制御方法は、流体の供給を受けて作動する少なくとも1つの人工筋肉(M,AM1,AM2)を含むロボット本体(2)と、前記人工筋肉(M,AM1,AM2)に供給される前記流体の圧力を調整する流体圧調整装置(151,152)とを含むロボット装置(1)の制御方法であって、前記ロボット本体(2)の手先(4)と前記対象との接触後に前記手先(4)から前記対象に予め定められた押圧力(Fp)が加えられる前記手先(4)の目標到達位置を前記手先(4)と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先(4)の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先(4)の現在位置との差に基づいて前記人工筋肉(M,AM1,AM2)に供給される流体の目標圧力(Ptag1(i),Ptag2(i))を設定し、前記手先(4)と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉(M,AM1,AM2)に供給される流体の圧力が前記目標圧力(Ptag1(i),Ptag2(i))となるように前記流体圧調整装置(151,152)を制御するものである。
かかる方法によれば、流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット装置の手先を適正かつ速やかに対象に接触させることが可能となる。
そして、本開示の発明は上記実施形態に何ら限定されるものではなく、本開示の外延の範囲内において様々な変更をなし得ることはいうまでもない。更に、上記実施形態は、あくまで発明の概要の欄に記載された発明の具体的な一形態に過ぎず、発明の概要の欄に記載された発明の要素を限定するものではない。
本開示の発明は、人工筋肉を含むロボット装置の製造産業等において利用可能である。
Claims (17)
- 流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット本体と、前記人工筋肉に供給される前記流体の圧力を調整する流体圧調整装置とを含むロボット装置であって、
前記ロボット本体の手先と前記対象との接触後に前記手先から前記対象に予め定められた押圧力が加えられる前記手先の目標到達位置を前記手先と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先の現在位置との差に基づいて前記人工筋肉に供給される流体の目標圧力を設定し、前記手先と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉に供給される流体の圧力が前記目標圧力となるように前記流体圧調整装置を制御する制御装置を備えるロボット装置。 - 請求項1に記載のロボット装置において、
前記制御装置は、前記ロボット本体の作動開始に先立って前記目標到達位置を設定するロボット装置。 - 請求項1または2に記載のロボット装置において、
前記制御装置は、前記手先の前記現在位置が変化しなくなった後、前記目標位置を前記目標到達位置まで徐々に変化させるロボット装置。 - 請求項1から3の何れか一項に記載のロボット装置において、
前記手先の前記現在位置が変化する間の前記目標位置は、前記目標到達位置と、前記対象に応じた前記手先の目標速度および目標加速度の少なくとも何れか一方とに基づいて複数設定されるロボット装置。 - 請求項1から3の何れか一項に記載のロボット装置において、
前記制御装置は、前記手先の前記現在位置が変化する間、前記手先の目標加速度を予め定められた上限加速度を超えないように制限しながら前記目標位置を所定時間おきに設定するロボット装置。 - 請求項5に記載のロボット装置において、
前記制御装置は、前記ロボット装置の周囲で人の存在が検知されたか否かを判定し、前記ロボット装置の周囲で人の存在が検知された場合、前記上限加速度を前記ロボット装置の周囲で人の存在が検知されていない場合に比べて小さくするロボット装置。 - 請求項1から6の何れか一項に記載のロボット装置において、
前記手先を前記現在位置から前記目標位置まで移動させる引張力を算出すると共に、前記引張力に基づいて前記2つのリンクを相対的に回動させるための目標トルクを設定する目標トルク設定部と、
前記目標トルクに基づいて前記目標圧力を設定する目標圧力設定部とを含むロボット装置。 - 請求項7に記載のロボット装置において、
前記制御装置は、
前記目標トルク設定部は、予め定められた上限値を超えないように前記引張力を算出すると共に、前記ロボット装置の周囲に人がいる場合、前記上限値を前記ロボット装置の周囲に人がいない場合に比べて小さくするロボット装置。 - 請求項7または8に記載のロボット装置において、
前記目標トルク設定部は、前記目標位置と前記現在位置との差にゲインを乗じた比例項を含むフィードバック制御の関係式に従って前記引張力を算出すると共に、前記手先の前記目標位置または前記現在位置に応じて前記比例項のゲインを変化させるロボット装置。 - 請求項1から9の何れか一項に記載のロボット装置において、
前記流体圧調整装置は、電流の供給を受けて前記人工筋肉に供給される前記流体の圧力を調整し、
前記制御装置は、前記目標圧力と、前記人工筋肉に供給される前記流体の流量とに基づいて電流指令値を設定し、前記電流指令値に基づいて前記流体圧調整装置を制御するロボット装置。 - 請求項1から10の何れか一項に記載のロボット装置において、
前記人工筋肉は、内部に前記流体が供給されると共に前記内部の圧力の上昇に応じて径方向に膨張しながら軸方向に収縮するチューブを含むロボット装置。 - 請求項11に記載のロボット装置において、
前記制御装置は、前記人工筋肉に要求される力に応じた前記目標圧力を、前記チューブが前記軸方向に収縮するときと、前記チューブが前記軸方向に伸長するときとで変化させるロボット装置。 - 請求項1から12の何れか一項に記載のロボット装置において、
前記流体圧調整装置は、電磁部、スプール、前記スプールを付勢するスプリング、前記流体が供給される入力ポート、出力ポート、前記出力ポートに連通するフィードバックポート、および前記入力ポートと前記出力ポートとに連通可能なドレンポートを含むソレノイドバルブであり、
前記ソレノイドバルブは、前記電磁部が発生する推力と、前記スプリングの付勢力と、前記出力ポートから前記フィードバックポートに供給される流体圧の作用により前記スプールに加えられる推力とをバランスさせて前記流体の圧力を調整するロボット装置。 - 請求項1から13の何れか一項に記載のロボット装置において、
前記ロボット本体は、少なくとも1つの関節と、複数のリンクとを含み、
前記人工筋肉は、前記関節を介して連結される2つの前記リンクを相対的に回動させるロボット装置。 - 請求項14に記載のロボット装置において、
前記2つの前記リンクは、互いに拮抗するように配置された一対の前記人工筋肉により相対的に回動させられるロボット装置。 - 請求項1から15の何れか一項に記載のロボット装置において、
前記ロボット本体は、前記少なくとも1つの人工筋肉と、ハンド部とを有するロボットアームであるロボット装置。 - 流体の供給を受けて作動する少なくとも1つの人工筋肉を含むロボット本体と、前記人工筋肉に供給される前記流体の圧力を調整する流体圧調整装置とを含むロボット装置の制御方法であって、
前記ロボット本体の手先と前記対象との接触後に前記手先から前記対象に予め定められた押圧力が加えられる前記手先の目標到達位置を前記手先と前記対象とが接触する前に設定すると共に、前記対象と接触する前の前記手先の位置から前記目標到達位置までの軌道を形成する目標位置と前記手先の現在位置との差に基づいて前記人工筋肉に供給される流体の目標圧力を設定し、前記手先と前記対象とが接触する前から前記目標位置が前記目標到達位置に一致するまでの間、前記人工筋肉に供給される流体の圧力が前記目標圧力となるように前記流体圧調整装置を制御するロボット装置の制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022548375A JPWO2022054947A1 (ja) | 2020-09-14 | 2021-09-13 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020153743 | 2020-09-14 | ||
JP2020-153743 | 2020-09-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022054947A1 true WO2022054947A1 (ja) | 2022-03-17 |
Family
ID=80631773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/033571 WO2022054947A1 (ja) | 2020-09-14 | 2021-09-13 | ロボット装置およびその制御方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2022054947A1 (ja) |
WO (1) | WO2022054947A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114789444A (zh) * | 2022-05-05 | 2022-07-26 | 山东省人工智能研究院 | 一种基于深度强化学习和阻抗控制的柔顺人机接触方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62218085A (ja) * | 1986-03-20 | 1987-09-25 | 株式会社日立製作所 | ロボツト装置 |
US4739692A (en) * | 1984-05-29 | 1988-04-26 | Fluidic Motion Corporation | Liquid contractility actuator |
JPH0161713U (ja) * | 1987-10-08 | 1989-04-19 | ||
JPH01257583A (ja) * | 1988-04-04 | 1989-10-13 | Bridgestone Corp | ロボットの制御装置 |
JPH0732277A (ja) * | 1993-07-16 | 1995-02-03 | Toshiba Corp | ロボットの制御装置 |
JP2006018791A (ja) * | 2004-06-04 | 2006-01-19 | Matsushita Electric Ind Co Ltd | 弾性体アクチュエータ駆動型可動機構の制御装置及び制御方法 |
JP2010221399A (ja) * | 2009-01-13 | 2010-10-07 | Panasonic Corp | 弾性体アクチュエータの制御装置及び制御方法、並びに、制御プログラム |
WO2012081197A1 (ja) * | 2010-12-17 | 2012-06-21 | パナソニック株式会社 | 弾性体アクチュエータ駆動機構の制御装置及び制御方法、並びに、制御プログラム |
JP2013010164A (ja) * | 2011-06-29 | 2013-01-17 | Denso Wave Inc | 電動ハンド制御装置およびその制御方法 |
JP2018035936A (ja) * | 2016-08-29 | 2018-03-08 | パナソニックIpマネジメント株式会社 | アクチュエータおよびその駆動方法 |
JP2020082220A (ja) * | 2018-11-16 | 2020-06-04 | ファナック株式会社 | ワーク把持ハンド、ハンドシステム、及びロボットシステム |
-
2021
- 2021-09-13 WO PCT/JP2021/033571 patent/WO2022054947A1/ja active Application Filing
- 2021-09-13 JP JP2022548375A patent/JPWO2022054947A1/ja active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4739692A (en) * | 1984-05-29 | 1988-04-26 | Fluidic Motion Corporation | Liquid contractility actuator |
JPS62218085A (ja) * | 1986-03-20 | 1987-09-25 | 株式会社日立製作所 | ロボツト装置 |
JPH0161713U (ja) * | 1987-10-08 | 1989-04-19 | ||
JPH01257583A (ja) * | 1988-04-04 | 1989-10-13 | Bridgestone Corp | ロボットの制御装置 |
JPH0732277A (ja) * | 1993-07-16 | 1995-02-03 | Toshiba Corp | ロボットの制御装置 |
JP2006018791A (ja) * | 2004-06-04 | 2006-01-19 | Matsushita Electric Ind Co Ltd | 弾性体アクチュエータ駆動型可動機構の制御装置及び制御方法 |
JP2010221399A (ja) * | 2009-01-13 | 2010-10-07 | Panasonic Corp | 弾性体アクチュエータの制御装置及び制御方法、並びに、制御プログラム |
WO2012081197A1 (ja) * | 2010-12-17 | 2012-06-21 | パナソニック株式会社 | 弾性体アクチュエータ駆動機構の制御装置及び制御方法、並びに、制御プログラム |
JP2013010164A (ja) * | 2011-06-29 | 2013-01-17 | Denso Wave Inc | 電動ハンド制御装置およびその制御方法 |
JP2018035936A (ja) * | 2016-08-29 | 2018-03-08 | パナソニックIpマネジメント株式会社 | アクチュエータおよびその駆動方法 |
JP2020082220A (ja) * | 2018-11-16 | 2020-06-04 | ファナック株式会社 | ワーク把持ハンド、ハンドシステム、及びロボットシステム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114789444A (zh) * | 2022-05-05 | 2022-07-26 | 山东省人工智能研究院 | 一种基于深度强化学习和阻抗控制的柔顺人机接触方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2022054947A1 (ja) | 2022-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6660448B2 (ja) | アクチュエータ限界コントローラ | |
US8774969B2 (en) | Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method | |
CN107053179B (zh) | 一种基于模糊强化学习的机械臂柔顺力控制方法 | |
JP2022169722A (ja) | 機械システムの制御方法,機械システム用コントローラ,ロボットマニピュレータ,および非一時的なコンピュータ可読記憶媒体 | |
KR101479233B1 (ko) | 로봇 및 그 협조작업 제어방법 | |
WO2022054947A1 (ja) | ロボット装置およびその制御方法 | |
Wolbrecht et al. | Pneumatic control of robots for rehabilitation | |
Van Damme et al. | Modeling hysteresis in pleated pneumatic artificial muscles | |
Gauthier et al. | Optimization of a test trajectory for SCARA systems | |
US20220331950A1 (en) | Robot device and liquid supply device | |
WO2022054948A1 (ja) | ロボット装置およびその制御方法 | |
WO2022054946A1 (ja) | ロボット装置およびその制御方法 | |
JP2022047780A (ja) | ロボット装置 | |
JP2022047779A (ja) | ロボット装置 | |
JP2023041590A (ja) | ロボット装置およびその制御方法 | |
JP3329443B2 (ja) | パラレルリンク型力覚入出力装置 | |
JP2022047778A (ja) | ロボット装置 | |
Zhang et al. | Novel 6-DOF wearable exoskeleton arm with pneumatic force-feedback for bilateral teleoperation | |
JP6511010B2 (ja) | アクチュエータ装置および制御方法 | |
JP2022159022A (ja) | ロボット装置 | |
JP2022047782A (ja) | ロボット装置 | |
CN113260928B (zh) | 控制装置 | |
Khoramshahi et al. | A practical control approach for safe collaborative supernumerary robotic arms | |
Guerriero et al. | Haptic Feedback Applied to Pneumatic Walking | |
JP7503799B2 (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: 21866903 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022548375 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: 21866903 Country of ref document: EP Kind code of ref document: A1 |