WO2020075419A1 - 制御装置、制御方法および制御プログラム - Google Patents

制御装置、制御方法および制御プログラム Download PDF

Info

Publication number
WO2020075419A1
WO2020075419A1 PCT/JP2019/034382 JP2019034382W WO2020075419A1 WO 2020075419 A1 WO2020075419 A1 WO 2020075419A1 JP 2019034382 W JP2019034382 W JP 2019034382W WO 2020075419 A1 WO2020075419 A1 WO 2020075419A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
task
arm
stopper
joint
Prior art date
Application number
PCT/JP2019/034382
Other languages
English (en)
French (fr)
Inventor
慶直 袖山
一生 本郷
和仁 若菜
佳和 古山
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US17/281,506 priority Critical patent/US12030186B2/en
Publication of WO2020075419A1 publication Critical patent/WO2020075419A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/1005Programme-controlled manipulators characterised by positioning means for manipulator elements comprising adjusting means
    • B25J9/101Programme-controlled manipulators characterised by positioning means for manipulator elements comprising adjusting means using limit-switches, -stops
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1638Programme controls characterised by the control loop compensation for arm bending/inertia, pay load weight/inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0045Manipulators used in the food industry
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40202Human robot coexistence

Definitions

  • the present disclosure relates to a control device, a control method, and a control program.
  • robots that perform various tasks have been realized.
  • robots have been realized that assist humans by carrying heavy luggage and cooking on behalf of humans.
  • Patent Document 1 discloses a technique of detecting an intrusion of a person and stopping the operation of the robot or limiting the speed based on a signal.
  • Patent Document 2 discloses a technique of stopping the operation of the robot when the distance to the intruding object becomes equal to or less than a predetermined distance.
  • Patent Document 3 discloses a technique in which a mechanical stopper oscillates and comes into contact with an elastic body, so that a movable range of a rotating body in a robot can be set to exceed 360 degrees.
  • Patent Document 4 discloses a device that is attached to a portion including a joint of a user and that assists the movement of the joint by limiting the movable range of the joint.
  • Patent Document 5 discloses a technique for relaxing a limitation of movement due to a movable range of a joint in a robot having an articulated arm. Further, in Patent Document 6, a signal line is fixed at a reference point on a movable portion of a robot and a point serving as a reference of a movable range. Techniques for doing so are disclosed.
  • the present disclosure proposes a control device, a control method, and a control program capable of ensuring safety when the robot executes a task.
  • a control device in a joint part of a robot that joins two or more links, and a limiting part that physically limits the operation of the link, and A limiting unit that limits the movable range of the link by controlling the limiting unit corresponding to a predetermined joint based on a task executed by the robot.
  • FIG. 3 is a diagram showing an example of a task information storage unit according to the embodiment of the present disclosure. It is a figure which shows an example of the drive source which implement
  • achieves the motion of the motor which the actuator of this indication has. 9 is a flowchart showing an information processing procedure according to the embodiment of the present disclosure.
  • FIG. 1 is a diagram showing an example of an external appearance of a robot device 100 according to an embodiment.
  • FIG. 1 shows an appearance of a robot apparatus 100 capable of executing (applying) the control processing according to the embodiment.
  • the robot device 100 is a link structure in which a plurality of links are connected by joints, and each joint operates by an actuator.
  • the robot apparatus 100 is a humanoid, and in the present embodiment, attention is paid to motion control for a part of the robot apparatus 100, which is a part of a human's arm and hand.
  • the entire structure of the arm of the robot apparatus 100 is composed of an upper arm, a forearm, and a hand (palm) like a human.
  • the upper arm, the forearm, and the hand are connected by a joint.
  • the upper arm, forearm, and hand correspond to the above-mentioned link. Therefore, in the following embodiments, the link will be referred to as an “arm”.
  • the joint corresponds to a joint that joins two or more links (for example, an arm corresponding to the upper arm and an arm corresponding to the forearm).
  • the robot device 100 is mainly used at home and performs housework and the like, but can also be used for various industrial purposes.
  • the robot apparatus 100 is given a task such as “cutting vegetables”, and thus places an object (vegetable) on a workbench, holds the object with the right hand, and holds a tool (knife with the left hand). ), Cutting the object.
  • an article transfer task such as “take out food from the upper stage of the refrigerator and carry the taken out food to the work space of the kitchen”, “cut vegetables on a cutting board”.
  • an ingredient editing task such as.
  • the robot apparatus 100 has to grip the article, but there is a risk that the torque for gripping is insufficient and the article is dropped depending on the weight of the article to be carried.
  • the robot apparatus 100 uses a kitchen knife to cut the food material. For example, when the food material is hard, the torque for pushing the blade into the food material loses the reaction from the food material and There is a risk of turning in the wrong direction. There is also a risk that the robot device 100 will drop the knife.
  • the operation of the robot apparatus 100 is controlled by, for example, built-in software.
  • some error may occur in the software itself.
  • the robot device 100 may perform a dangerous operation due to an error.
  • physically limiting the movable range of the arm means, for example, an object made of a specific material (for example, a metal material) so that the arm does not unexpectedly move beyond the movable range controlled by software.
  • a specific material for example, a metal material
  • An object made of a specific material, that is, an object used for locking the arm may be referred to as a “stopper” below.
  • the control device 120 performs the following control processing. Specifically, the control device 120 is provided in a joint portion of a robot that joins two or more links, and physically limits a link operation and a predetermined joint based on a task executed by the robot. The movable range of the link is restricted by controlling the restriction part corresponding to the part. The link corresponds to the arm of the robot apparatus 100, that is, the arm. In addition, as will be described later with reference to FIG. 2, the control device 120 physically limits the movable range of the arm by controlling a stopper attached to a joint part that joins the arms. More specifically, the control device 120 limits the movable range of the arm by controlling the stopper via an actuator attached to the joint.
  • the control device 120 controls, for example, the actuator mounted on each joint of the arm to adjust the position of the stopper.
  • the control device 120 gives the actuator a parameter such as a movable range and a torque of the arm, and controls the actuator to adjust the position of the stopper based on the parameter.
  • FIG. 2 is a diagram schematically showing the configuration of the entire arm.
  • the arm 20 shown in FIG. 2A corresponds to the left arm (left arm) of the robot apparatus 100.
  • the arm 20 corresponds to a first arm 1L (an example of a first link) corresponding to a human left arm upper arm, a second arm 2L (an example of a second link) corresponding to a human left arm forearm, and a human left arm palm.
  • a third arm 3L an example of a third link).
  • the arm 20 includes a first joint portion 1Y that is a joint portion that connects the first arm 1L and the body of the robot apparatus 100, and a second joint portion 2Y that joins the first arm 1L and the second arm 2L. And a third joint portion 3Y that joins the second arm 2L and the third arm 3L.
  • the first arm 1L is a link that connects the first joint section 1Y and the second joint section 2Y
  • the second arm 2L connects the second joint section 2Y and the third joint section 3Y. It is a link
  • the third arm 3L is linked to the third joint 3Y.
  • actuators are mounted on each joint, and each joint is driven to rotate in a predetermined direction by the actuator. Then, in response to this drive, each arm is also rotationally driven in a predetermined direction.
  • the first joint 1Y is driven by two actuators that rotate around the pitch, specifically, the actuator 131-1a and the actuator 131-1b.
  • the actuator 131-1a and the actuator 131-1b when it is not necessary to distinguish between the actuator 131-1a and the actuator 131-1b, these will be collectively referred to as "pitch axis actuator 131-1".
  • the second joint section 2Y is driven by two actuators that rotate around the pitch, specifically, the actuator 131-2a and the actuator 131-2b.
  • actuator 131-2a and the actuator 131-2b are collectively referred to as a "pitch axis actuator 131-2".
  • the second joint 2Y is driven not only around the pitch but also around the roll and around the yaw by an actuator. Therefore, the second joint portion 2Y may be further mounted with two actuators that rotate around the roll and two actuators that rotate around the yaw. Further, the pitch axis actuator 131-2 may also serve as an actuator corresponding to these rotation directions.
  • the third joint 3Y is driven by two actuators that rotate around the pitch, specifically, the actuator 131-3a and the actuator 131-3b.
  • actuator 131-3a and the actuator 131-3b are collectively referred to as "pitch axis actuator 131-3".
  • the third joint 3Y is driven not only around the pitch but also around the roll and around the yaw by an actuator. Therefore, the third joint portion 3Y may further include two actuators that rotate around the roll and two actuators that rotate around the yaw. Further, the pitch axis actuator 131-3 may also serve as an actuator corresponding to these rotation directions.
  • the pitch axis actuator 131-1 includes an encoder for measuring a joint angle, a motor for generating torque, a current control type motor driver for driving the motor, and a deceleration for obtaining a sufficient generated force. Machine is installed. Further, the pitch axis actuator 131-1 is provided with a microcomputer (control unit) for controlling the drive of the actuator. These are not shown.
  • the pitch axis actuator 131-1, the pitch axis actuator 131-2, and the pitch axis actuator 131-3 are equipped with stoppers that are restriction units that physically limit the movement of the arm.
  • the pitch axis actuator 131-1 includes two stoppers that lock the first arm 1L by rotating around the pitch, specifically, the stopper ST1a and the stopper ST1b.
  • the pitch axis actuator 131-1 includes a stopper ST1a and a stopper ST1b that physically lock the rotational movement around the pitch of the first arm 1L by rotating around the pitch.
  • the actuator 131-1a has a stopper ST1a built therein. Therefore, the actuator 131-1a controls the stopper ST1a according to the control process of the control device 120. Specifically, the actuator 131-1a rotationally moves the stopper ST1a around the pitch so that the stopper ST1a physically locks the rotational movement around the pitch of the first arm 1L. Further, the actuator 131-1b has a stopper ST1b built therein. For this reason, the actuator 131-1a controls the stopper ST1b according to the control process of the control device 120. Specifically, the actuator 131-1b rotationally moves the stopper ST1a around the pitch so that the stopper ST1b physically locks the rotational movement around the pitch of the first arm 1L.
  • the pitch axis actuator 131-2 includes two stoppers that lock the second arm 2L by linearly expanding and contracting, specifically, a stopper ST2a and a stopper ST2b. Specifically, the pitch axis actuator 131-2 includes a stopper ST2a and a stopper ST2b which physically lock the rotational movement around the pitch of the second arm 2L by linearly expanding and contracting.
  • the actuator 131-2a has a stopper ST2a built therein. Therefore, the actuator 131-2a controls the stopper ST2a according to the control process of the control device 120. Specifically, the actuator 131-2a linearly extends and contracts the stopper ST2a so that the stopper ST2a physically locks the rotational movement of the second arm 2L around the pitch. Further, the actuator 131-2b has a stopper ST2b built therein. For this reason, the actuator 131-2b controls the stopper ST2b according to the control process of the control device 120. Specifically, the actuator 131-2b linearly extends and contracts the stopper ST2a so that the stopper ST2b physically locks the rotational movement of the second arm 2L around the pitch.
  • the pitch axis actuator 131-2 may have a built-in stopper that physically locks the rotational movement of the second arm 2L around the roll and the yaw by rotating around the roll and the yaw.
  • the stopper that physically locks the rotational movement of the second arm 2L around the roll may be controlled by another actuator (for example, a pitch axis actuator) mounted on the second joint 2Y.
  • the stopper that physically locks the rotational movement of the second arm 2L around the yaw may be controlled by another actuator (for example, a yaw axis actuator) mounted on the second joint 2Y.
  • stopper ST1a (or stopper ST1b) rotate and move.
  • stopper ST1b As the stopper that physically locks the rotational movement of the second arm 2L around the yaw, it is preferable to use a linearly expandable / contractible stopper.
  • the pitch axis actuator 131-3 includes two stoppers, specifically, a stopper ST3a and a stopper ST3b, which lock the third arm 3L by linearly expanding and contracting.
  • the pitch axis actuator 131-3 includes a stopper ST3a and a stopper ST3b that physically lock the rotational movement around the pitch of the third arm 3L by linearly expanding and contracting.
  • the actuator 131-3a has a stopper ST3a built therein.
  • the actuator 131-3a controls the stopper ST3a according to the control process of the control device 120.
  • the actuator 131-3a linearly extends and contracts the stopper ST3a so that the stopper ST3a physically locks the rotational movement of the third arm 3L around the pitch.
  • the actuator 131-3b has a stopper ST3b built therein. Therefore, the actuator 131-3b controls the stopper ST3b according to the control processing of the control device 120.
  • the actuator 131-3b linearly extends and contracts the stopper ST3a so that the stopper ST3b physically locks the rotational movement of the second arm 2L around the pitch.
  • the pitch axis actuator 131-3 may have a built-in stopper that physically locks the rotational movement of the third arm 3L around the roll and around the yaw by rotating around the roll and around the yaw. Further, the stopper that physically locks the rotational movement of the third arm 3L around the roll may be controlled by another actuator (for example, a pitch axis actuator) mounted on the third joint 3Y. In addition, the stopper that physically locks the rotational movement of the third arm 3L around the yaw may be controlled by another actuator (for example, a yaw axis actuator) mounted on the third joint 3Y.
  • stopper that physically locks the rotational movement of the third arm 3L around the roll it is preferable to use a stopper that moves rotationally like the stopper ST1a (or stopper ST1b). Further, as the stopper that physically locks the rotational movement of the third arm 3L around the yaw, it is preferable to use a linearly expandable / contractible stopper.
  • FIG. 3 is a diagram showing an example of the structure of the actuator and the stopper in the first joint portion.
  • the arm 20 shown in the lower part of FIG. 3 (a) is the same as that shown in FIG. Then, the actuator 131-1a rotationally moves the stopper ST1a around the pitch so that the stopper ST1a physically locks the rotational movement around the pitch of the first arm 1L. Further, the actuator 131-1b rotationally moves the stopper ST1a around the pitch so that the stopper ST1b physically locks the rotational movement around the pitch of the first arm 1L.
  • the shape of the first joint 1Y is, for example, a column, but in FIGS. 3A and 3B, a cut surface of the column-shaped first joint 1Y is shown. Then, the first joint portion 1Y has a pawl H at the uppermost portion. The first joint 1Y is covered with the outer shell 30. As described above, the first joint portion 1Y has the pawl H and is covered with the outer shell portion 30, so that a groove-shaped structure (cavity structure) is formed between the stopper and the pawl H. For example, the stopper ST1a and the pawl H form a groove-shaped structure SP1a. Further, for example, the groove structure SP1b is formed by the stopper ST1b and the pawl H.
  • the stopper ST1a and the stopper ST1b are not rotated and are in the initial position, but in the initial state, the stopper ST1a and the stopper ST1b are located below the first joint 1Y. It is made to stand still in the state that it overlapped with.
  • the first joint portion 1Y can be rotated by the groove-shaped structure SP1a and the groove-shaped structure SP1b formed by the positional relationship between the stopper ST1a and the pawl H and the positional relationship between the stopper ST1b and the pawl H.
  • the degree of freedom in rotation is “270 deg”.
  • the actuator 131-1a can rotate the first arm 1L clockwise by "135 deg”.
  • the actuator 131-1b can rotate the first arm 1L counterclockwise by “135 deg”.
  • the pitch axis actuator 131-1 is controlled by the control device 120 to rotate the stoppers ST1a and ST1b to limit the movable range of the first arm 1L to “ ⁇ 45 deg to 45 deg”.
  • the actuator 131-1a rotates the stopper ST1a clockwise to move the position of the stopper ST1a from the state of FIG. 3 (a) to the state of FIG. 3 (b).
  • the width of the groove-shaped structure SP1a is narrowed, and the first arm 1L can be rotated only 45 degrees clockwise by the width of the groove-shaped structure SP1a corresponding to 45 deg (clockwise 45 deg). become unable.
  • the actuator 131-1a limits the movable range of the first arm 1L by locking the first arm 1L by the action of the stopper ST1a forming the groove-shaped structure SP1a and the pawl H. .
  • the actuator 131-1b moves the position of the stopper ST1b from the state of FIG. 3 (a) to the state of FIG. 3 (b) by rotating the stopper ST1b counterclockwise.
  • the width of the grooved structure SP1b is narrowed, and the first arm 1L rotates counterclockwise only 45 deg by the amount of the grooved structure SP1b having a width corresponding to ⁇ 45 deg (45 deg counterclockwise). You can't let it happen. For example, even if a force to rotate the first arm 1L counterclockwise by 45 deg or more is applied from the outside in the task, the stopper ST1b and the pawl H collide, and the first arm 1L exceeds 45 deg. It cannot rotate counterclockwise. From this, the actuator 131-1b limits the movable range of the first arm 1L by locking the first arm 1L by the action of the stopper ST1b forming the groove-shaped structure SP1b and the pawl H. .
  • FIG. 4 is a diagram schematically showing a functional configuration for controlling the robot apparatus 100 according to the embodiment.
  • the robot device 100 includes an input / output unit 110, a control device 120 that performs a control process for causing the actuator 130 to perform the process described with reference to FIGS. 2 and 3, and an actuator 130. Since the actuator 130 is a processing unit that directly controls the operation of the arm 20, it can also be referred to as a drive unit 130.
  • the input / output unit 110 includes an image capturing unit 110a, a sound collecting unit 110b, an output unit 110c, and a distance sensor 110d, and realizes an information processing function or operation described below. Run.
  • the internal configuration of the input / output unit 110 is not limited to the configuration shown in FIG. 4, and may be any other configuration as long as it is a configuration for performing information processing described later.
  • the connection relationship between the processing units included in the input / output unit 110 is not limited to the connection relationship illustrated in FIG. 4 and may be another connection relationship.
  • the image capturing unit 110a captures an image of the surrounding environment of the robot apparatus 100.
  • the imaging unit 110 a corresponds to the eyes of the robot device 100.
  • the image capturing unit 110a transmits the image capturing information (environment information indicating the surrounding environment) obtained by the image capturing to the control device 120.
  • the sound collector 110b collects environmental sounds of the surrounding environment. For example, when the robot device 100 is a humanoid robot as shown in FIG. 1, the sound collecting unit 110b corresponds to the ear of the robot device 100. Further, the sound collection unit 110b transmits the audio information obtained by the sound collection to the control device 120.
  • the output unit 110c outputs predetermined information.
  • the output unit 110c uses a highly dangerous tool (such as a kitchen knife) when the recognition unit 122b, which will be described later, recognizes that a person is present within a predetermined range around the robot device 100. If it does, it outputs to the person that it is dangerous.
  • the output unit 110c may output such information by voice.
  • the output unit 110c may display such information on the display unit.
  • the output unit 110c corresponds to the mouth of the robot apparatus 100.
  • the distance sensor 110d detects the distance to a person or an obstacle. For example, the distance sensor 110d detects the distance to a person or an obstacle based on the image pickup information by the image pickup unit 110a. Further, the distance sensor 110d transmits the detected distance to the control device 120.
  • the control device 120 is a device that performs a control process according to the embodiment. Specifically, the control device 120 limits the movable range of the arm by controlling the stopper corresponding to the joint portion corresponding to the task based on the task executed by the robot device 100. As shown in FIG. 4, the control device 120 includes a storage unit 121 and a control unit 122.
  • the storage unit 121 is realized by, for example, a semiconductor memory device such as a RAM (Random Access Memory) and a flash memory, or a storage device such as a hard disk and an optical disk.
  • the storage unit 121 has a task information storage unit 121a.
  • the task information storage unit 121a stores information on the movable range corresponding to the task.
  • FIG. 5 shows an example of the task information storage unit 121a according to the embodiment.
  • the task information storage unit 121a has items such as "task ID”, "task”, “mode”, “arm”, “pitch”, “roll”, and "yaw”.
  • “Task ID” indicates identification information for identifying a task. “Task” indicates the content of the task identified by the “task ID”.
  • the “mode” is a mode of operation of the robot apparatus 100 (more specifically, the arm 20) and corresponds to a movable range. To make it easy to understand, the “mode” refers to this mode in the case of what mode the robot apparatus 100 is set to, and in what movable range it is controlled to operate.
  • Arm indicates an arm of the arms 20 shown in FIG. 2 that needs to control the movable range in order to execute the task identified by the “task ID”.
  • the movable range is the range of the rotation angle in each of the three rotation axes such as the pitch axis, the roll axis, and the yaw axis. Therefore, the "pitch” indicates a rotation angle range for rotation on the pitch axis (around the pitch). Further, “roll” indicates a rotation angle range for rotation on the roll axis (around the roll). Further, “yaw” indicates a rotation angle range for rotation (yaw rotation) on the yaw axis.
  • the example of FIG. 5 shows an example in which the task identified by the task ID “T1” is a task having the content “take vegetables on the workbench”. Further, in the example of FIG. 5, when the robot apparatus 100 is instructed to perform the task identified by the task ID “T1”, the control mode is set to the “initial mode” and the first joint section 1Y is set. An example is shown in which the movable range of the first arm 1L, which is the movable range around the pitch, is limited to “ ⁇ 50 deg to 180 deg” by controlling the corresponding stopper.
  • the movable range around the roll within the movable range of the first arm 1L is set to “0 deg to 0 deg”.
  • the control mode to the “initial mode” and controlling the stopper corresponding to the first joint portion 1Y the movable range of the first arm 1L and the movable range around the yaw is set to “0 deg to 0 deg”.
  • the movable range "0 deg to 0 deg” means that the first arm 1L is completely locked by using a stopper so that the first arm 1L does not rotate in its rotation direction.
  • control unit 122 the CPU (Central Processing Unit), the MPU (Micro Processing Unit), etc. execute various programs stored in the storage device inside the control device 120 using the RAM as a work area. It is realized by.
  • the control unit 112 is realized by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) and an FPGA (Field Programmable Gate Array).
  • the control unit 122 includes a reception unit 122a, a recognition unit 122b, a specification unit 122c, a determination unit 122d, a determination unit 122e, and an operation control unit 122f, which will be described below. Realize or execute information processing functions and actions.
  • the internal configuration of the control unit 122 is not limited to the configuration shown in FIG. 4 and may be another configuration as long as it is a configuration for performing information processing described later.
  • the connection relationship between the processing units included in the control unit 122 is not limited to the connection relationship illustrated in FIG. 4 and may be another connection relationship.
  • the reception unit 122a receives a task.
  • the reception unit 122a receives a task from the user of the robot device 100.
  • the reception unit 122a receives the utterance information indicating the content of the task.
  • the reception unit 122a receives the task ID.
  • the user can directly input the task to the robot apparatus 100, or can input the task via a network using a predetermined terminal device (for example, a personal computer, a smartphone, etc.).
  • the recognition unit 122b recognizes the environment around the robot apparatus 100 based on information obtained from the input unit such as the imaging unit 110a, the sound collection unit 110b, and the distance sensor 110d of the input / output unit 110.
  • the recognition unit 122b also transmits the recognized environment information to the identification unit 122c.
  • the identifying unit 122c identifies parameters required for the robot apparatus 100 to execute a task. For example, the identifying unit 122c identifies, as a parameter, information about the target object that is the target of the task. For example, the identifying unit 122c uses at least the name of the target object, the size of the target object, the strength of the target object, the rigidity of the target object, the weight of the target object, and the target value for the target object ( For example, the depth to which the carrot is cut (an example of a target value) is specified. For example, when a task such as “cut carrot” is given, the target object is “carrot”. For example, the specifying unit 122c specifies a parameter necessary for the robot apparatus 100 to execute the task when the accepting unit 122a accepts the task.
  • the identifying unit 122c identifies, based on the task, a joint that is required to be operated to execute the task, out of the joints included in the robot apparatus 100. For example, the identifying unit 122c identifies, from the joints of the robot apparatus 100, a joint that needs to be operated to execute the task based on the information about the target object of the task.
  • the information about the object is the above-mentioned parameter.
  • the identifying unit 122c calculates (identifies) a movable range necessary for executing the task for the link corresponding to the identified joint, that is, the arm 20, based on the task. For example, the identifying unit 122c calculates (identifies) a movable range necessary for executing the task for the link corresponding to the identified joint, that is, the arm 20, based on the information on the target object of the task. To do.
  • the information about the object is the above-mentioned parameter.
  • the identifying unit 122c calculates (identifies) the torque required to execute the task. For example, the identifying unit 122c calculates (identifies) the torque required to execute the task based on the information (parameter) about the target object of the task. For example, when a task such as “cut out carrot” is given, the identifying unit 122c calculates the torque required to cut out carrot. For example, the identifying unit 122c calculates the torque required to cut the carrot based on the strength, rigidity, weight, etc. of the carrot.
  • the specifying unit 122c can also calculate the movable range by further considering the surrounding environment of the robot apparatus 100 when the task is performed. For example, the identification unit 122c calculates the movable range based on the environment information recognized by the recognition unit 122b. As a result, the control device 120 has no influence on the person when, for example, a person is present near the robot apparatus 100 and the robot apparatus 100 uses a highly dangerous instrument or the like in the task. In addition, the movable range and the torque can be calculated within the range in which the task can be executed. As a result, the control device 120 can ensure the safety of the surroundings when the robot device 100 executes a task.
  • the specifying unit 122c can also calculate the movable range based on the risk determined by the determination unit 122d described later, that is, the risk when the task is performed. For example, when the determination unit 122d determines that the task is accompanied by a risk of a predetermined value or more due to the robot device 100 using a cutting tool in the task, for example, the specifying unit 122c sets a certain criterion. A movable range narrower than the movable range is calculated. Accordingly, even when the robot apparatus 100 uses a highly dangerous tool such as a blade in a task, the robot apparatus 100 can use the tool only in a limited narrow area. Since it disappears, the control device 120 can minimize the risk to surrounding persons.
  • the identifying unit 122c determines, based on the task, which one of the first joint section 1Y, the second joint section 2Y, and the third joint section 3Y is necessary for the task. Identify. For example, when the specifying unit 122c specifies that all of the first joint unit 1Y, the second joint unit 2Y, and the third joint unit 3Y are necessary, the specifying unit 122c determines the first joint unit 1Y and the second joint unit 2Y based on the task.
  • the first movable range is specified for the first arm 1L that links the joint 2Y
  • the second movable range is specified for the second arm 2L that links the second joint 3Y and the third joint 3Y.
  • a third movable range of the third arm 3L linked to the joint 3Y is specified.
  • the specifying unit 122c also calculates the torque of the motors of the actuators corresponding to the first joint unit 1Y, the second joint unit 2Y, and the third joint unit 3Y.
  • the determination unit 122d performs the task in the movable range calculated by the identification unit 122c based on the surrounding environment of the robot apparatus 100 and the situation of the object (for example, instrument) used by the robot apparatus 100 in the task.
  • Determine the risk of For example, the determining unit 122d determines the risk when the task is performed in the movable range calculated by the identifying unit 122c based on the presence or absence of a person within a predetermined range from the robot apparatus 100 as the surrounding environment of the robot apparatus 100. To do.
  • the determination unit 122d determines that the closer a person is to the robot apparatus 100, the higher the risk. Further, for example, the determination unit 122d determines that the risk is high when the tool has a blade. Further, for example, the determining unit 122d determines that the risk is high when the appliance is a firearm (for example, a stove).
  • the determination unit 122d determines the risk based on the contents of the device. For example, the determination unit 122d determines that the risk is high when the contents of the device are alcohols or harmful substances. Further, for example, the determination unit 122d determines that the risk is high when the robot apparatus 100 handles hot water.
  • the determination unit 122d may determine the risk using an index indicating the risk such as how high the risk is. For example, when there are five levels of index values (for example, 1 to 5) as the index value indicating the risk, the determining unit 122d determines that the index is the lowest rank (safe) if the risk is the lowest. Calculate the value 1. On the other hand, when the determination unit 122d determines that the risk is the highest rank, the determination unit 122d calculates the index value 5.
  • an index indicating the risk such as how high the risk is. For example, when there are five levels of index values (for example, 1 to 5) as the index value indicating the risk, the determining unit 122d determines that the index is the lowest rank (safe) if the risk is the lowest. Calculate the value 1. On the other hand, when the determination unit 122d determines that the risk is the highest rank, the determination unit 122d calculates the index value 5.
  • the deciding unit 122e decides information on the handling of the used material used to execute the task based on the risk determined by the determining unit 122d. For example, the determining unit 122e determines, as the information regarding the handling of the usage object, the orientation of the usage object when gripping the usage object and the orientation with respect to the person. For example, when the object to be used is a knife, the determination unit 122e determines the direction of the blade tip and the blade in the opposite direction to the person.
  • the determining unit 122e determines the gripping force when gripping the used object as the information regarding the handling of the used object. For example, the higher the risk of the material used, the more stable the grip is required. Therefore, the determination unit 122e determines a higher gripping force as the danger of the used material is higher. However, depending on the object to be used, if the gripping force is too high, it may be damaged. Therefore, the determination unit 122e determines the optimum gripping force based on the danger of the used material and what the used material is. For example, in the example of FIG. 2, it is the third arm 3L that grips the object to be used. Therefore, the determination unit 122e determines the gripping force for the third arm 3L. The determination unit 122e also transmits determination information indicating the determined content to the operation control unit 122f so that the arm 20 can be operated with the determined content.
  • the operation control unit 122f limits the movable range of the member by controlling the limiting unit corresponding to a predetermined joint based on the task executed by the robot apparatus 100.
  • the motion control unit 122f controls, as a predetermined joint unit, a stopper corresponding to the joint unit specified by the specifying unit 122c based on the task.
  • the operation control unit 122f controls, as a predetermined joint unit, a stopper corresponding to the joint unit specified by the specifying unit 122c based on the information about the target object of the task.
  • the motion control unit 122f controls the stopper corresponding to the predetermined joint so that the motion control unit 122f operates within the movable range specified by the specifying unit 122c based on the information about the target object of the task.
  • the motion control unit 122f controls a stopper corresponding to a predetermined joint unit so as to operate within the movable range specified by the specifying unit 122c based on the surrounding environment of the robot when a task is performed. Further, the operation control unit 122f controls a stopper corresponding to a predetermined joint so as to operate within the movable range specified by the specifying unit 122c based on the risk when a task is performed.
  • the operation control unit 122f controls, as the predetermined joint unit, a stopper corresponding to a joint unit rotatable about a predetermined axis among the joint units rotatable about at least one axis. , Controls the movable range when the link rotates about a predetermined axis.
  • the operation control unit 122f limits the movable range of the link by controlling the stopper to bring the stopper into contact with the link. That is, the operation control unit 122f limits the movable range of the link by locking the stopper to the link.
  • the operation control unit 122f limits the movable range of the arm 20 by controlling the stopper corresponding to a predetermined joint based on the task executed by the robot apparatus 100. Specifically, the operation control unit 122f limits the movable range of the arm 20 by controlling the stopper via the actuator. For example, the motion control unit 122f controls, as a predetermined joint, a stopper corresponding to the joint corresponding to the task, so that the arm 20 corresponding to the joint operates only within the movable range corresponding to the task. So that the movable range of the arm 20 is limited.
  • the operation control unit 122f limits the movable range of the arm 20 by locking the arm 20 with respect to the stopper.
  • the operation control unit 122f limits the movable range of the arm 20 to the movable range according to the task by linearly extending and contracting the stopper to lock the arm 20.
  • the operation control unit 122f controls the groove-shaped space between the stopper and the pawl H of the joint by rotating the stopper, and the controlled groove-shaped space.
  • the movable range of the arm 20 is limited to the movable range according to the task by locking the arm 20 by the action of the stopper H and the pawl H.
  • the specifying unit 122c specifies various parameters, but the operation control unit 122f controls the stopper corresponding to a predetermined joint based on the parameters specified by the specifying unit 122c, thereby causing the arm to move.
  • Limit the range of movement of 20 For example, the specifying unit 122c specifies the movable range of each arm 20, and the operation control unit 122f limits the movable range of the arm 20 for each arm 20.
  • the motion control unit 122f corresponds to the first joint unit 1Y as shown in FIG.
  • the movable range of the first arm 1L is limited to the first movable range by controlling the stoppers ST1a and ST1b which are the first stoppers.
  • the operation control unit 122f causes the second joint unit 2Y to move as shown in FIG.
  • the movable range of the second arm 2L is limited to the second movable range by controlling the stoppers ST2a and ST2b corresponding to the second stoppers.
  • the motion control unit 122f causes the third joint unit 3Y to move as shown in FIG.
  • the stoppers ST3a and ST3b corresponding to the third stopper the movable range of the third arm 3L is limited to the third movable range.
  • the actuator 130 is mounted on each joint of the robot apparatus 100, and controls the drive of the joint to control the operation of the link (for example, the arm 20) corresponding to the joint. Further, the actuator 130 limits the movable range of the link by controlling the stopper. As shown in FIG. 4, the actuator 130 has a stopper that limits the movable range of the link.
  • the actuator 130 is composed of a plurality of drive units provided for each axis such as roll, pitch, and yaw in each joint.
  • Each drive unit is a combination of a motor that rotates around a predetermined axis, an encoder that detects the rotational position of the motor, and a driver that adaptively controls the rotational position and rotational speed of the motor based on the output of the encoder. Composed of.
  • the actuator 130 is mounted on, for example, the first joint section 1Y, and controls the rotation around the pitch by an actuator 131-1a and an actuator 131-1b (pitch axis actuator 131-1).
  • the actuator 131-2a and the actuator 131-2b mounted on the second joint 2Y and controlling the rotation around the pitch, and mounted on the third joint 3Y to control the rotation around the pitch. It has an actuator 131-3a and an actuator 131-3b (pitch axis actuator 131-3) for performing.
  • the actuator 131-1a of the pitch axis actuator 131-1 limits the movable range around the pitch (clockwise) of the first arm 1L by controlling the stopper ST1a as shown in FIG.
  • the actuator 131-1b of the pitch axis actuator 131-1 limits the movable range around the pitch (counterclockwise) of the first arm 1L by controlling the stopper ST1b as shown in FIG.
  • the actuator 131-2a of the pitch axis actuator 131-2 limits the movable range around the pitch (clockwise) of the second arm 2L by controlling the stopper ST2a as shown in FIG.
  • the actuator 131-2b of the pitch axis actuator 131-2 limits the movable range around the pitch (counterclockwise) of the second arm 2L by controlling the stopper ST2b as shown in FIG.
  • the actuator 131-2a of the pitch axis actuator 131-2 limits the movable range around the pitch (clockwise) of the second arm 2L by controlling the stopper ST2a as shown in FIG.
  • the actuator 131-2b of the pitch axis actuator 131-2 limits the movable range around the pitch (counterclockwise) of the second arm 2L by controlling the stopper ST2b as shown in FIG.
  • the actuator 131-3a limits the movable range around the pitch (clockwise) of the third arm 3L by controlling the stopper ST3a as shown in FIG.
  • the actuator 131-3b limits the movable range around the pitch (counterclockwise) of the second arm 2L by controlling the stopper ST3b as shown in FIG.
  • FIG. 6 is a diagram showing an example of a drive source that realizes the movement of the motor of the actuator 130.
  • a drive source for realizing the movement of the motor of the actuator 130 there is a hydraulic pump or a pneumatic pump. Any of these may be adopted as the actuator 130 according to the embodiment.
  • the hydraulic pump P1 is connected to the actuator 131-3b.
  • the robot device 100 is equipped with an electric transmitter or engine, and the electric transmitter or engine drives the hydraulic pump P1.
  • the hydraulic pump P1 supplies the hydraulic pressure to the actuator 131-3b.
  • the hydraulic pressure of the motor of the actuator 131-3b causes the motor to rotate, for example.
  • the hydraulic pump P1 is connected not only to the actuator 131-3b but also to the actuator 131-1a, the actuator 131-1b, the actuator 131-2a, the actuator 131-2b, and the actuator 131-3a.
  • the pneumatic pump P2 is connected to the actuator 131-3b.
  • the robot apparatus 100 is equipped with an electric transmitter or engine, and the electric transmitter or engine drives the pneumatic pump P2. Then, the pneumatic pump P2 supplies pneumatic pressure to the actuator 131-3b.
  • the motor of the actuator 131-3b performs, for example, rotational movement by this pneumatic pressure.
  • the pneumatic pump P2 is connected not only to the actuator 131-3b but also to the actuator 131-1a, the actuator 131-1b, the actuator 131-2a, the actuator 131-2b, and the actuator 131-3a.
  • the reception unit 122a receives an instruction of task T3 from the user.
  • the recognition unit 122b recognizes the environment around the robot apparatus 100 based on the environment information acquired by the imaging unit 110a and the distance acquired by the distance sensor. Then, the recognition unit 122b transmits the environment information obtained by the recognition to the identification unit 122c.
  • the identifying unit 122c identifies, based on the task T3, the joint portion to be driven in the task T3 among the parts of the robot apparatus 100.
  • the identifying unit 122c identifies the first joint portion 1Y, the second joint portion 2Y, and the third joint portion 3Y. Note that this can be restated in that the specifying unit 122c specifies the first arm 1L, the second arm 2L, and the third arm 3L as the arms 20 to be driven in the task T3 based on the task T3. .
  • the identifying unit 122c identifies, as a parameter, the information about the target object of the task T3 based on the content of the task T3 and the environment information. For example, the identifying unit 122c has at least the name of the target object, the size of the target object, the strength of the target object, the rigidity of the target object, the weight of the target object, and the target object as information about the target object of the task T3. Identify target values to achieve.
  • the target object in task T3 is a "carrot". Therefore, the identifying unit 122c determines that the object is a carrot, the size of the carrot, the strength of the carrot, the rigidity of the carrot, the weight of the carrot, and how much the carrot should be cut (a target value to be achieved for the object. One example) is specified.
  • the specifying unit 122c determines the movable range of the arm 20 and the torque required to execute the task T3, which is the movable range necessary to execute the task T3, based on the information about the specified object. Calculate (specify). Specifically, the identifying unit 122c performs the task T3 on each of the first arm 1L, the second arm 2L, and the third arm 3L based on the identified information about the target object and the environment information. The necessary movable range and the torque required to execute the task T3 are calculated (specified).
  • the identifying unit 122c calculates the movable range by referring to the task information storage unit 121a.
  • the identifying unit 122c is a movable range associated with the task ID “T3” in the movable range (rotation angle range) of each axis stored in the task information storage unit 121a, and the movable range of each axis. To extract.
  • the identifying unit 122c has a movable range around the pitch of “0 deg to 25 deg”, a movable range around the roll of “0 deg to 0 deg”, and a movable range around the yaw of “0 deg to”. 0 deg "is specified. Further, the specifying unit 122c specifies “70 deg to 90 deg” as the movable range around the pitch, “0 deg to 0 deg” as the movable range around the roll, and “0 deg to 0 deg” as the movable range around the yaw about the second arm 2L. To do.
  • the specifying unit 122c specifies “0 deg to 0 deg” as the movable range around the pitch, “0 deg to 0 deg” as the movable range around the roll, and “0 deg to 0 deg” as the movable range around the yaw about the third arm 3L. To do.
  • the identifying unit 122c calculates the movable range as described above. That is, the movable range around the pitch in the first arm 1L corresponding to the upper arm may be a relatively narrow range such as “0 deg to 25 deg” (because it is a fine work), and similarly, the second arm corresponding to the forearm.
  • the movable range around the pitch in 2L may be a relatively narrow range such as “70 deg to 90 deg” (because it is a fine work).
  • the third arm 3L corresponding to the palm (wrist) is hardly moved, the movable range around the pitch may be "0 deg to 0 deg".
  • the identifying unit 122c calculates the movable range as described above. That is, since the movements of the first arm 1L corresponding to the upper arm around the roll and around the yaw are unnecessary during the cutting operation, the movable range may be "0 deg to 0 deg" (complete lock). Similarly, since the movements of the second arm 2L corresponding to the forearm around the roll and around the yaw are unnecessary during the cutting operation, the movable range may be "0 deg to 0 deg" (complete lock). Similarly, the movement around the roll and the yaw around the third arm 3L corresponding to the palm is not necessary during the cutting operation, so the movable range may be "0 deg to 0 deg" (complete lock).
  • the identifying unit 122c does not directly adopt the movable range stored in the task information storage unit 121a, but extracts the movable range based on the movable range extracted from the task information storage unit 121a and the environment information. You may add adjustments, such as narrowing. The identifying unit 122c may calculate the movable range without using the movable range stored in the task information storage unit 121a.
  • the identification unit 122c transmits information indicating the identified movable range and torque to the operation control unit 122f.
  • the operation control unit 122f limits the movable range of the arm 20 by controlling the stopper corresponding to the task T3 based on the information acquired from the specifying unit 122c. Specifically, the operation control unit 122f calculates control information such as how to move the stopper within the movable range specified by the specifying unit 122c, based on the information acquired from the specifying unit 122c.
  • the actuator 130 is controlled so as to move the stopper based on the calculated control information.
  • the operation control unit 122f may rotate the stopper ST1a about the pitch (clockwise) by the distance of the groove-shaped structure SP1a adjusted by the rotation of the stopper ST1a.
  • the control information X1a indicating whether or not the movable range in is 0 deg to 25 deg is calculated.
  • the operation control unit 122f determines the pitch of the first arm 1L according to the width of the groove-shaped structure SP1b adjusted by rotating the stopper ST1b about the pitch (counterclockwise). Control information X1b indicating whether or not the movable range in the surroundings is “0 deg to 25 deg” is calculated.
  • the operation control unit 122f transmits the calculated control information X1a and control information X1b to the pitch axis actuator 131-1 so that the pitch axis actuator 131-1 receives the control information X1a and the control information X1b as follows.
  • the stoppers ST1a and ST1b are controlled to rotate.
  • the operation control unit 122f sends the calculated control information X1a to the actuator 131-1a to control the actuator 131-1a so as to rotate the stopper ST1a according to the control information X1a.
  • the actuator 131-1a rotates the stopper ST1a in the clockwise direction according to the received control information X1a.
  • the operation control unit 122f controls the actuator 131-1b to rotate the stopper ST1b according to the control information X1b by transmitting the calculated control information X1b to the actuator 131-1b.
  • the actuator 131-1b rotates the stopper ST1a counterclockwise according to the received control information X1a.
  • the first arm 1L can rotate only within the range of the width of the groove-shaped structure SP1a formed by the stopper ST1a and the pawl H. That is, the stopper ST1a and the pawl H are in contact with each other so that the first arm 1L does not rotate around the pitch (clockwise) beyond “25 deg”.
  • the stopper ST1b may be rotated.
  • the first arm 1L can rotate only within the range of the width of the groove-shaped structure SP1a formed by the stopper ST1b and the pawl H due to the contact between the pawl H and the pawl H. That is, the stopper ST1b and the pawl H come into contact with each other so that the first arm 1L does not rotate around the pitch (clockwise) beyond “0 deg”.
  • the operation control unit 122f transmits torque information for driving the first joint 1Y to the pitch axis actuator 131-1.
  • the operation control unit 122f is locked by the extended stopper ST2a as shown in FIG. 2 (b) when the stopper ST2a is extended in the linear direction, and the upper end of the second arm 2L is extended.
  • Control information X2a indicating whether or not the movable range around the pitch of the second arm 2L is “70 deg to 90 deg” is calculated.
  • the motion control unit 122f is locked by the extended stopper ST2b at the lower end of the second arm 2L as shown in FIG. 2B when the stopper ST2b is extended in the linear direction.
  • Control information X2b indicating whether or not the movable range around the pitch of the second arm 2L is “70 deg to 90 deg” is calculated.
  • the operation control unit 122f transmits the calculated control information X2a and control information X2b to the pitch axis actuator 131-2, so that the pitch axis actuator 131-2 receives the control information X2a and the control information X2b.
  • the stoppers ST2a and ST2b are controlled to rotate.
  • the operation control unit 122f controls the actuator 131-2a to extend the stopper ST2a according to the control information X2a by transmitting the calculated control information X2a to the actuator 131-2a.
  • the actuator 131-2a straightens the stopper ST2a in accordance with the received control information X2a.
  • the operation control unit 122f controls the actuator 131-2b to extend the stopper ST2b according to the control information X2b by transmitting the calculated control information X2b to the actuator 131-2b.
  • the actuator 131-2b straightens the stopper ST2a in accordance with the received control information X2a.
  • the stopper ST2a serves as a refill rod and physically locks it. That is, the stopper ST2a applies a physical force to the second arm 2L in a direction such that the second arm 2L does not rotate around the pitch (clockwise) beyond “90 deg”, so that the second arm 2L is prevented. Lock.
  • the stopper ST2b serves as a refill rod and physically locks it. That is, the stopper ST2b applies a physical force to the second arm 2L in a direction such that the second arm 2L does not rotate around the pitch (counterclockwise) beyond “70 deg”, and thus the second arm 2L is provided. Lock 2L.
  • the operation control unit 122f is locked by the extended stopper ST3a, as shown in FIG. 2B, when the stopper ST3a is extended in the linear direction.
  • Control information X3a indicating whether the movable range around the pitch of the second arm 2L is “0 deg to 0 deg” is calculated.
  • the operation control unit 122f is locked by the extended stopper ST2b at the lower end of the third arm 3L as shown in FIG. 2B when the stopper ST3b is extended by a distance in the linear direction.
  • Control information X3b indicating whether or not the movable range around the pitch of the third arm 3L is “0 deg to 0 deg” is calculated.
  • the operation control unit 122f transmits the calculated control information X3a and control information X3b to the pitch axis actuator 131-3, so that the pitch axis actuator 131-3 receives the control information X3a and the control information X3b.
  • the stoppers ST3a and ST3b are controlled to rotate.
  • the operation control unit 122f controls the actuator 131-3a to extend the stopper ST2a according to the control information X3a by transmitting the calculated control information X3a to the actuator 131-3a.
  • the actuator 131-3a straightens the stopper ST3a in accordance with the received control information X3a.
  • the operation control unit 122f controls the actuator 131-3b to extend the stopper ST3b according to the control information X3b by transmitting the calculated control information X3b to the actuator 131-3b.
  • the actuator 131-3b straightens the stopper ST3a according to the received control information X3a.
  • the stopper ST3a acts as a refill rod and physically locks it. That is, the stopper ST3a applies a physical force to the second arm 2L in a direction such that the third arm 3L does not rotate around the pitch (clockwise) beyond “0 deg”, and thus the third arm 3L is moved. Lock.
  • the stopper ST3b serves as a refill rod and physically locks the stopper. That is, the stopper ST3b applies a physical force to the third arm 3L in a direction such that the third arm 3L does not rotate around the pitch (counterclockwise) beyond “0 deg”, and thus the third arm 3L is provided. Lock 3L.
  • the robot apparatus 100 executes the task T3 when the control processing by the actuator 130 is completed. Specifically, the robot apparatus 100 grips the kitchen knife that is the tool E1 and cuts the object O1 with the tool E1.
  • the force generated by the torque (rotational force of the motor) required to cut the object O1 (carrot) that is, the force for cutting the object O1 is T1 (N).
  • T1 the force generated by the torque (rotational force of the motor) required to cut the object O1 (carrot) required to cut the object O1
  • T2 the reaction force that the arm 20 receives from the object O1 via the instrument E1 (knife)
  • T1 ⁇ T2 holds.
  • the stopper ST3a focus only on the stopper ST3a. Further, it is assumed that the movement of the third arm 3L is not locked by the stopper ST3a. Then, since T1 ⁇ T2 is satisfied, the torque of the motor that rotationally drives the third joint portion 3Y corresponding to the third arm 3L cannot withstand T2, and the third arm 3L has the structure shown in FIG. There is a possibility to move in the direction indicated by the dotted arrow in. In this case, it is impossible to cut the object O1 and the blade tip of the instrument E1 may face upward, which is dangerous.
  • the movement of the third arm 3L is assumed to be locked by the stopper ST3a.
  • the torque of the motor that rotationally drives the third joint 3Y corresponding to the third arm 3L cannot withstand T2, and the third arm 3L moves in the direction indicated by the dotted arrow in FIG. 2B.
  • the stopper ST3a locks the third arm 3L so as not to move in this way.
  • the stopper ST3a applies a force to the third arm 3L in a direction that repels the force in the direction indicated by the dotted arrow, so that the third arm 3L cuts the object O1. It contributes to give more auxiliary power to the power of.
  • the role of the stopper allows the motor to be made smaller if the torque required to execute the task becomes smaller. Further, for example, since it is possible to eliminate a situation in which the blade edge faces in an unexpected direction, it becomes possible to ensure safety. Further, as described above, since the movable range of the arm 20 is controlled by software, and the physical movement is actually restricted by using the stopper, the limitation in information processing by software is caused. It is possible to realize double safety measures such as physical limitation by stopper.
  • control device 120 can ensure the safety to the surroundings when the robot executes a task. Specifically, the control device 120 can realize double safety measures by software and a stopper (hardware). Further, since the control device 120 can contribute to downsizing of the motor of the joint portion, for example, when the actuator 130 has such a motor, downsizing of the actuator 130 itself can be realized.
  • FIG. 7 is a flowchart showing the information processing procedure according to the embodiment.
  • the reception unit 122a determines whether a task has been received from the user (step S101). When the accepting unit 122a determines that the task has not been accepted (step S101; No), it waits until the task is accepted. On the other hand, when the accepting unit 122a accepts the task (step S101; Yes), the recognizing unit 122b acquires the imaging information imaged by the imaging unit 110a and the sensor information detected by the distance sensor 110d (step S101). S102).
  • the recognition unit 122b recognizes the environment around the robot apparatus 100 based on the acquired information (step S103).
  • the recognition unit 122b also recognizes a target object that is a target of the task (step S103).
  • the identifying unit 122c identifies information regarding the target object of the task (step S104).
  • the identifying unit 122c includes at least the name of the target object, the size of the target object, the strength of the target object, the rigidity of the target object, the weight of the target object, and the target value for the target object as the information related to the target object of the task. Identify.
  • the identifying unit 122c identifies, based on the task, a joint that needs to be operated to execute the task among the joints included in the robot apparatus 100 (step S105). For example, the identifying unit 122c identifies, of the joints included in the robot apparatus 100, a joint that needs to be operated to execute a task, based on the information about the object identified in step S104.
  • step S106 the specifying unit 122c calculates the movable range and the torque based on the information regarding the target object specified in step S104.
  • the operation control unit 122f limits the movable range of the link by controlling the stopper (limitation unit) corresponding to the predetermined joint (step S107). Specifically, the operation control unit 122f controls, as a predetermined joint unit, a stopper corresponding to the joint unit specified by the specifying unit 122c based on the information about the target object of the task. Further, the motion control unit 122f controls the stopper corresponding to the predetermined joint so as to operate within the movable range specified by the specifying unit 122c based on the information about the target object of the task.
  • the operation control unit 122f calculates control information indicating how to move the stopper so that the movable range of the link is operated only within the movable range specified in step S106. . Then, the operation control unit 122f controls the actuator 130 to move the stopper based on the calculated control information. The actuator 130 moves the stopper according to the control information received from the operation control unit 122f.
  • control device 120 may instruct the robot device 100 to execute a task when the control process of step S107 ends.
  • the control device 120 can instruct the robot device 100 to handle the object with the information determined by the determination unit 122e.
  • the control device 120 can instruct the robot device 100 about the orientation of the object to be used and the gripping force.
  • each constituent element of each illustrated device is functionally conceptual, and does not necessarily have to be physically configured as illustrated. That is, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part of the device may be functionally or physically distributed / arranged in arbitrary units according to various loads and usage conditions. It can be integrated and configured.
  • a limiter that is provided at the joint of the robot that joins two or more links and that physically limits the movement of the links;
  • a control unit that limits the movable range of the link by controlling the limiting unit corresponding to a predetermined joint based on the task executed by the robot.
  • the control device according to (1) wherein the control unit controls, as the predetermined joint unit, the limiting unit corresponding to a joint unit determined based on the task.
  • control unit controls, as the predetermined joint unit, the limiting unit that corresponds to a joint unit that is determined based on information about an object that is a target of the task.
  • control unit controls the limiting unit corresponding to the predetermined joint unit so as to operate within a movable range that is determined based on information about the target object of the task.
  • the control unit includes at least the name of the target object, the size of the target object, the strength of the target object, the rigidity of the target object, the weight of the target object, and the target object as the information about the target object of the task.
  • the control device which controls the limiting unit corresponding to the joint determined based on any one of the contents of the task for the object.
  • the control unit controls, as the predetermined joint unit, the limiting unit corresponding to a joint unit rotatable about a predetermined axis among joint units rotatable about at least one axis.
  • the control device according to any one of (1) to (6), which controls a movable range when the link rotates about the predetermined axis.
  • the control unit controls the limiting unit corresponding to the predetermined joint unit so as to operate within a movable range determined based on the surrounding environment of the robot when the task is performed (1) to (7)
  • the control device according to one.
  • the control unit controls the limiting unit corresponding to the predetermined joint unit so as to operate within a movable range determined based on a risk when the task is performed (1) to (8)
  • the control device according to 1.
  • the control unit limits the movable range of the member by controlling the limiting unit to lock the limiting unit and the link.
  • (11) A control unit that is provided in a joint of a robot that joins two or more links and that physically restricts the operation of the link, and a limiting unit that corresponds to a predetermined joint is based on a task that the robot executes.
  • a control unit that is provided in a joint of a robot that joins two or more links and that physically restricts the operation of the link, and a limiting unit that corresponds to a predetermined joint is based on a task that the robot executes.
  • robot device 110 input / output unit 120 control device 130 actuator 131-1 pitch axis actuator 131-2 pitch axis actuator 131-3 pitch axis actuator 1Y 1st joint section 2Y 2nd joint section 3Y 3rd joint section 1L 1st arm 2L 2nd arm 3L 3rd arm ST1a Stopper ST1b Stopper ST2a Stopper ST2b Stopper ST3a Stopper ST3b Stopper

Landscapes

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

Abstract

本願にかかる制御装置(120)は、2以上のリンクを接合するロボットの関節部に設けられ、リンクの動作を物理的に制限する制限部と、ロボットが実行するタスクに基づいて、所定の関節部に対応する前記制限部を制御することにより、リンクの可動範囲を制限する制御部(122f)とを有する。この構成により、ロボットがタスクを実行する際の安全性を確保することができるようになる。

Description

制御装置、制御方法および制御プログラム
 本開示は、制御装置、制御方法および制御プログラムに関する。
 近年、様々なタスクを実行するロボットが実現されてきている。例えば、人間に代わって重い荷物を運んだり、調理を行ったりすることで、人間の手助けを行うロボットが実現されてきている。
 例えば、特許文献1には、人の侵入検知をし、信号に基づいてロボットの動作を停止または速度を制限する技術が開示されている。また、特許文献2には、侵入物体との距離が所定の距離以下になった際にロボットの動作を停止させる技術が開示されている。
 また、特許文献3には、メカストッパが揺動して弾性体と接触し、ロボットにおける回転体の可動範囲を360度を超えて設定可能にする技術が開示されている。また、特許文献4には、ユーザの関節を含む部分に装着され、関節の可動範囲を制限することで、関節の動作を補助する装置が開示されている。
 また、特許文献5には、多関節アームを備えたロボットにおいて、関節の可動範囲による運動の制限を緩和する技術が開示されている。また、特許文献6には、信号線をロボットの可動部上の基準点と可動範囲の基準となる点とで固定し、可動範囲を超える場合には、信号線が断線し、ロボットを非常停止させる技術が開示されている。
特許第5035768号公報 特開2010-208002号公報 特開2018-43334号公報 特開2017-158645号公報 特開2015-174185号公報 特開2003-275988号公報
 しかしながら、上記の従来技術では、必ずしもロボットがタスクを実行する際の安全性を確保することができるとは限らない。
 そこで、本開示では、ロボットがタスクを実行する際の安全性を確保することができる制御装置、制御方法および制御プログラムを提案する。
 上記の課題を解決するために、本開示にかかる一形態の制御装置は、2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制限部と、前記ロボットが実行するタスクに基づいて、所定の関節部に対応する前記制限部を制御することにより、前記リンクの可動範囲を制限する制限部とを有する。
本開示の実施形態にかかるロボット装置の外観の一例を示す図である。 本開示のアーム全体の構成を模式的に示す図である。 本開示の第1関節部におけるアクチュエーターおよびストッパーの構造の一例を示す図である。 本開示の実施形態にかかるロボット装置を制御するための機能的構成を模式的に示す図である。 本開示の実施形態にかかるタスク情報記憶部の一例を示す図である。 本開示のアクチュエーターが有するモーターの運動を実現する駆動源の一例を示す図である。 本開示の実施形態にかかる情報処理手順を示すフローチャートである。
 以下に、本開示にかかる制御装置、制御方法および制御プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ説明する。なお、この実施形態により本願にかかる制御装置、制御方法および制御プログラムが限定されるものではない。また、以下の実施形態において、同一の部位には同一の符号を付し、重複する説明は省略される。
〔1.ロボット装置について〕
 まず、図1を用いて、実施形態にかかるロボット装置100の概要について説明する。図1は、実施形態にかかるロボット装置100の外観の一例を示す図である。図1には、実施形態にかかる制御処理を実行(適用)可能なロボット装置100の外観を示している。ロボット装置100は、複数のリンクを関節で接続されたリンク構造体であり、各関節はアクチュエーターによって動作する。
 図1の例では、ロボット装置100は、人型であり、本実施形態では、このロボット装置100の部位のうち、人間でいう腕と手から成る部位に対する動作制御に着目している。ロボット装置100の腕の全体構造は、人間と同様に、上腕、前腕、手(手のひら)によって構成されている。また、上腕、前腕、手は、関節で接続されている。上腕、前腕、手は上でいうリンクに対応する。したがって、以下の実施形態では、リンクを「アーム」と表記することにする。また、関節は、2以上のリンク(例えば、上腕に対応するアームと、前腕に対応するアーム)を接合する関節部に相当する。
 ロボット装置100は、主に家庭内で利用され家事等を行うが、産業用の様々な用途で使用することも可能である。図1の例では、ロボット装置100は、「野菜を切る」といったタスクを与えられたことにより、作業台に対象物(野菜)を置き、右手で対象物を押さえ、左手に持った器具(包丁)で、その対象物を切っている。
 ここで、実施形態にかかる制御処理の前提について説明する。例えば、ロボット装置100が上記のようなタスクをはじめ、各種タスクを実行する際には、安全性の観点から問題がある。例えば、ロボット装置100がタスクを実行するにあたって、対象物を持ち運んだり、各種器具を利用することでタスクを実行しなければならないといったことは多々ある。
 例えば、ロボット装置100が、調理作業を行う際には、「冷蔵庫の上段から食材を取り出し、取り出した食材をキッチンの作業空間へ運ぶ」といった物品搬送タスク、「まな板の上で野菜をカットする」といった食材編集タスクが存在する。物品搬送タスクでは、ロボット装置100は、物品を把持しなければならないが、運ぶ物品の重量によっては、把持する際のトルクが足りず、物品を落としてしまうといったリスクがある。
 また、食材編集タスクでは、ロボット装置100は、包丁を利用して食材を切ることになるが、例えば、食材が硬い場合、食材に刃を押し込むためのトルクが食材からの反作用に負けて、刃があらぬ方向に向いてしまうといったリスクがある。また、ロボット装置100が包丁を落としてしまうといったリスクもある。
 また、上記のような危険性の高い事態が発生しないよう、ロボット装置100は、例えば、内蔵されているソフトウェアによって動作を制御されるが、ソフトウェア自体に何らかのエラーが生じる可能性もあり、そうすると、エラーによってロボット装置100は危険な動作を行ってしまうこともあり得る。
 こうしてリスクを低減し安全性の高い動作をロボット装置100に行わせるには、ソフトウェアでロボット装置100を制御しつつ、ソフトウェアで防ぐのが困難な思わぬ事態(例えば、急に物品を落とす、あるいは、包丁の刃先が突然人の方に向いてしまう)に備えて、物理的にロボット装置100の動作を制限する必要がある。具体的には、ロボット装置100の可動範囲をソフトウェアによる制御なしで制限する必要がある。例えば、上記のようなタスクを実行するには、ロボット装置100は、アームを駆使する必要があるため、ソフトウェアによる制御なしでアームの可動範囲を物理的に制限する必要がある。ここで、アームの可動範囲を物理的に制限するとは、例えば、アームがソフトウェアにより制御された可動範囲を超えて不意に動いてしまわないよう、特定の材質(例えば、金属材質)で出来た物体をアームに当接させることで、可動範囲を超えて動こうとするアームを係止することを示す。なお、特定の材質で出来た物体、すなわちアームの係止に用いられる物体を以下では「ストッパー」と表記する場合がある。
 このような前提および問題を解消するために、実施形態にかかる制御装置120は、以下の制御処理を行う。具体的には、制御装置120は、2以上のリンクを接合するロボットの関節部に設けられ、リンクの動作を物理的に制限する制限部と、ロボットが実行するタスクに基づいて、所定の関節部に対応する制限部を制御することにより、リンクの可動範囲を制限する。なお、リンクは、ロボット装置100の腕、すなわちアームに対応する。また、このあと図2を用いて説明するが、制御装置120は、アームとアームを接合する関節部に取り付けられているストッパーを制御することで、アームの可動範囲を物理的に制限する。より具体的には、制御装置120は、関節部に取り付けられているアクチュエーターを介してストッパーを制御することにより、アームの可動範囲を制限する。
 例えば、物品搬送タスクでは、可動範囲として、広めの可動範囲が必要となるが、包丁等の危険性の高い器具を利用することがないため、タスクとしての危険度は比較的低めである。一方、食材編集タスクでは、刃物である包丁等の危険性の高い器具を利用する必要があるため、タスクとしての危険度は高い。このように、タスクに応じて、ロボット装置100に求められる性能が異なる。このようなことから、制御装置120は、実施形態にかかる制御処理として、例えば、アームの各関節部に搭載されたアクチュエーターに対して、ストッパーの位置を調整するよう制御する。例えば、制御装置120は、アームの可動範囲およびトルクといったパラメータをアクチュエーターに与えることにより、このパラメータに基づいて、ストッパーの位置を調整するようアクチュエーターを制御する。
〔2.アームの構成〕
 次に、図2および図3を用いて、実施形態にかかるアームの構成について説明する。図2は、アーム全体の構成を模式的に示す図である。図2(a)に示すアーム20は、ロボット装置100の左側のアーム(左腕)に対応する。アーム20は、人間の左腕上腕に対応する第1アーム1L(第1リンクの一例)と、人間の左腕前腕に対応する第2アーム2L(第2リンクの一例)と、人間の左腕手のひらに対応する第3アーム3L(第3リンクの一例)とを有する。
 また、アーム20は、第1アーム1Lとロボット装置100の胴体とを接道する関節部である第1関節部1Yと、第1アーム1Lと第2アーム2Lとを接合する第2関節部2Yと、第2アーム2Lと第3アーム3Lとを接合する第3関節部3Yとを有する。また、このようなことから、第1アーム1Lは、第1関節部1Yおよび第2関節部2Yを繋ぐリンクであり、第2アーム2Lは、第2関節部2Yおよび第3関節部3Yを繋ぐリンクであり、第3アーム3Lは、第3関節部3Yにリンクされる。
 また、上記各関節にはアクチュエーターが搭載されており、各関節は、アクチュエーターによって所定方向に回転駆動する。そして、この駆動に応じて、各アームも所定方向に回転駆動する。後ほど図3を用いて説明するが、第1関節部1Yは、ピッチ回りに回転する2つのアクチュエーター、具体的には、アクチュエーター131-1aおよびアクチュエーター131-1bによって駆動する。以下の実施形態では、アクチュエーター131-1aおよびアクチュエーター131-1bを区別する必要が無い場合には、これらを総称して「ピッチ軸アクチュエーター131-1」と表記する。
 また、第2関節部2Yは、ピッチ回りに回転する2つのアクチュエーター、具体的には、アクチュエーター131-2aおよびアクチュエーター131-2bによって駆動する。以下の実施形態では、アクチュエーター131-2aおよびアクチュエーター131-2bを区別する必要が無い場合には、これらを総称して「ピッチ軸アクチュエーター131-2」と表記する。
 なお、第2関節部2Yは、ピッチ回りだけでなく、アクチュエーターによってロール回りおよびヨー回りにも駆動する。このため、第2関節部2Yには、ロール回りに回転する2つのアクチュエーターおよびヨー回りに回転する2つのアクチュエーターもさらに搭載されてよい。また、ピッチ軸アクチュエーター131-2が、これら回転方向に対応するアクチュエーターの役割も兼ねていてよい。
 また、第3関節部3Yは、ピッチ回りに回転する2つのアクチュエーター、具体的には、アクチュエーター131-3aおよびアクチュエーター131-3bによって駆動する。以下の実施形態では、アクチュエーター131-3aおよびアクチュエーター131-3bを区別する必要が無い場合には、これらを総称して「ピッチ軸アクチュエーター131-3」と表記する。
 なお、第3関節部3Yは、ピッチ回りだけでなく、アクチュエーターによってロール回りおよびヨー回りにも駆動する。このため、第3関節部3Yには、ロール回りに回転する2つのアクチュエーターおよびヨー回りに回転する2つのアクチュエーターもさらに搭載されてよい。また、ピッチ軸アクチュエーター131-3が、これら回転方向に対応するアクチュエーターの役割も兼ねていてよい。
 次に、ピッチ軸アクチュエーター131-1、ピッチ軸アクチュエーター131-2およびピッチ軸アクチュエーター131-3について説明する。各アクチュエータの機能は共通しているため、ピッチ軸アクチュエーター131-1を例に挙げて説明する。ピッチ軸アクチュエーター131-1には、関節角を計測するためのエンコーダー、トルクを発生するためのモーター、モーターを駆動するための電流制御型モーター・ドライバーの他、十分な発生力を得るための減速機が取り付けられている。また、ピッチ軸アクチュエーター131-1には、アクチュエーターの駆動制御を行うマイクロコンピューター(制御部)が併設されている。これらについては不図示である。
 また、ピッチ軸アクチュエーター131-1、ピッチ軸アクチュエーター131-2、ピッチ軸アクチュエーター131-3には、アームの動作を物理的に制限する制限部であるストッパーが搭載されている。
 例えば、図3の例によると、ピッチ軸アクチュエーター131-1には、ピッチ回りに回転することで、第1アーム1Lを係止する2つのストッパー、具体的には、ストッパーST1aおよびストッパーST1bが内蔵される。具体的には、ピッチ軸アクチュエーター131-1には、ピッチ回りに回転することで、第1アーム1Lのピッチ回りの回転運動を物理的に係止するストッパーST1aおよびストッパーST1bが内蔵される。
 図3(a)の例では、アクチュエーター131-1aには、ストッパーST1aが内蔵される。このようなことから、アクチュエーター131-1aは、制御装置120の制御処理に従って、ストッパーST1aを制御する。具体的には、アクチュエーター131-1aは、ストッパーST1aが第1アーム1Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST1aをピッチ回りに回転移動させる。また、アクチュエーター131-1bには、ストッパーST1bが内蔵される。このようなことから、アクチュエーター131-1aは、制御装置120の制御処理に従って、ストッパーST1bを制御する。具体的には、アクチュエーター131-1bは、ストッパーST1bが第1アーム1Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST1aをピッチ回りに回転移動させる。
 図2に戻ると、ピッチ軸アクチュエーター131-2には、直動伸縮することで、第2アーム2Lを係止する2つのストッパー、具体的には、ストッパーST2aおよびストッパーST2bが内蔵される。具体的には、ピッチ軸アクチュエーター131-2には、直動伸縮することで、第2アーム2Lのピッチ回りの回転運動を物理的に係止するストッパーST2aおよびストッパーST2bが内蔵される。
 図2(b)の例によると、アクチュエーター131-2aには、ストッパーST2aが内蔵される。このようなことから、アクチュエーター131-2aは、制御装置120の制御処理に従って、ストッパーST2aを制御する。具体的には、アクチュエーター131-2aは、ストッパーST2aが第2アーム2Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST2aを直動伸縮させる。また、アクチュエーター131-2bには、ストッパーST2bが内蔵される。このようなことから、アクチュエーター131-2bは、制御装置120の制御処理に従って、ストッパーST2bを制御する。具体的には、アクチュエーター131-2bは、ストッパーST2bが第2アーム2Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST2aを直動伸縮させる。
 なお、ピッチ軸アクチュエーター131-2には、ロール回りおよびヨー回りに回転することで、第2アーム2Lのロール回りおよびヨー回りの回転運動を物理的に係止するストッパーが内蔵されてもよい。また、第2アーム2Lのロール回りの回転運動を物理的に係止するストッパーは、第2関節部2Yに搭載される他のアクチュエーター(例えば、ピッチ軸アクチュエーター)によって制御されてもよい。また、第2アーム2Lのヨー回りの回転運動を物理的に係止するストッパーは、第2関節部2Yに搭載される他のアクチュエーター(例えば、ヨー軸アクチュエーター)によって制御されてもよい。
 また、第2アーム2Lのロール回りの回転運動を物理的に係止するストッパーとしては、ストッパーST1a(あるいは、ストッパーST1b)のように回転移動するものが好ましい。また、第2アーム2Lのヨー回りの回転運動を物理的に係止するストッパーとしては、直動伸縮するものが好ましい。
 また、ピッチ軸アクチュエーター131-3には、直動伸縮することで、第3アーム3Lを係止する2つのストッパー、具体的には、ストッパーST3aおよびストッパーST3bが内蔵される。具体的には、ピッチ軸アクチュエーター131-3には、直動伸縮することで、第3アーム3Lのピッチ回りの回転運動を物理的に係止するストッパーST3aおよびストッパーST3bが内蔵される。
 図2(b)の例によると、アクチュエーター131-3aには、ストッパーST3aが内蔵される。このようなことから、アクチュエーター131-3aは、制御装置120の制御処理に従って、ストッパーST3aを制御する。具体的には、アクチュエーター131-3aは、ストッパーST3aが第3アーム3Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST3aを直動伸縮させる。また、アクチュエーター131-3bには、ストッパーST3bが内蔵される。このようなことから、アクチュエーター131-3bは、制御装置120の制御処理に従って、ストッパーST3bを制御する。具体的には、アクチュエーター131-3bは、ストッパーST3bが第2アーム2Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST3aを直動伸縮させる。
 なお、ピッチ軸アクチュエーター131-3には、ロール回りおよびヨー回りに回転することで、第3アーム3Lのロール回りおよびヨー回りの回転運動を物理的に係止するストッパーが内蔵されてもよい。また、第3アーム3Lのロール回りの回転運動を物理的に係止するストッパーは、第3関節部3Yに搭載される他のアクチュエーター(例えば、ピッチ軸アクチュエーター)によって制御されてもよい。また、第3アーム3Lのヨー回りの回転運動を物理的に係止するストッパーは、第3関節部3Yに搭載される他のアクチュエーター(例えば、ヨー軸アクチュエーター)によって制御されてもよい。
 また、第3アーム3Lのロール回りの回転運動を物理的に係止するストッパーとしては、ストッパーST1a(あるいは、ストッパーST1b)のように回転移動するものが好ましい。また、第3アーム3Lのヨー回りの回転運動を物理的に係止するストッパーとしては、直動伸縮するものが好ましい。
 ここで、上で少し触れたが、ピッチ軸アクチュエーター131-1、および、ピッチ軸アクチュエーター131-1によって制御されるストッパーについて、図3を用いて詳細に説明する。図3は、第1関節部におけるアクチュエーターおよびストッパーの構造の一例を示す図である。
 図3(a)の下部に示すアーム20は、図2で示すものと同様である。そして、アクチュエーター131-1aは、ストッパーST1aが第1アーム1Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST1aをピッチ回りに回転移動させる。また、アクチュエーター131-1bは、ストッパーST1bが第1アーム1Lのピッチ回りの回転運動を物理的に係止するよう、ストッパーST1aをピッチ回りに回転移動させる。
 また、第1関節部1Yの形状は、例えば、円柱状であるが、図3(a)および図3(b)では、この円柱状の第1関節部1Yの切断面を示す。そして、第1関節部1Yは、最上部に歯止めHを有する。また、第1関節部1Yは、外殻部30によって覆われている。このように、第1関節部1Yが、歯止めHを有するとともに、外殻部30によって覆われていることにより、ストッパーと歯止めHとの間に溝状構造(空洞構造)が生まれる。例えば、ストッパーST1aと歯止めHによって溝状構造SP1aが形成される。また、例えば、ストッパーST1bと歯止めHによって溝状構造SP1bが形成される。
 また、図3(a)では、ストッパーST1aおよびストッパーST1bは、回転移動させられておらず、初期状態の位置にあるが、初期状態では、ストッパーST1aおよびストッパーST1bは、第1関節部1Yの下部で重なった状態で静止させられている。このときのストッパーST1aと歯止めHとの位置関係、および、ストッパーST1bと歯止めHとの位置関係によって形成される溝状構造SP1a、溝状構造SP1bによって、第1関節部1Yを回転させることのできる回転自由度は「270deg」であるものとする。かかる状態では、アクチュエーター131-1aは、第1アーム1Lを時計回りに「135deg」回転させることができる。また、アクチュエーター131-1bは、第1アーム1Lを反時計回りに「135deg」回転させることができる。
 このような状態において、ピッチ軸アクチュエーター131-1は、制御装置120から、ストッパーST1aおよびST1bを回転移動させることで第1アーム1Lの可動範囲を「-45deg~45deg」に制限するよう制御されたとする。かかる場合、アクチュエーター131-1aは、ストッパーST1aを時計回りに回転させることで、ストッパーST1aの位置を図3(a)の状態から図3(b)の状態へと移動させる。これにより、溝状構造SP1aの広さは狭められ、第1アーム1Lは、45deg(時計回りに45deg)に対応する広さの溝状構造SP1aの分だけ、時計回りに45degしか回転させることができなくなる。例えば、タスクの中で第1アーム1Lを時計回りに45deg以上回転させようとする力が外部から掛かったとしても、ストッパーST1aと歯止めHとが衝突し、第1アーム1Lは、45degを超えて時計回りに回転することはできない。このようなことから、アクチュエーター131-1aは、溝状構造SP1aを形成するストッパーST1aと、歯止めHとの作用によって第1アーム1Lを係止させることにより、第1アーム1Lの可動範囲を制限する。
 また、アクチュエーター131-1bは、ストッパーST1bを反時計回りに回転させることで、ストッパーST1bの位置を図3(a)の状態から図3(b)の状態へと移動させる。これにより、溝状構造SP1bの広さは狭められ、第1アーム1Lは、-45deg(反時計回りに45deg)に対応する広さの溝状構造SP1bの分だけ、反時計回りに45degしか回転させることができなくなる。例えば、タスクの中で第1アーム1Lを反時計回りに45deg以上回転させようとする力が外部から掛かったとしても、ストッパーST1bと歯止めHとが衝突し、第1アーム1Lは、45degを超えて反時計回りに回転することはできない。このようなことから、アクチュエーター131-1bは、溝状構造SP1bを形成するストッパーST1bと、歯止めHとの作用によって第1アーム1Lを係止させることにより、第1アーム1Lの可動範囲を制限する。
〔3.ロボット装置の構成〕
 次に、図4を用いて、実施形態にかかるロボット装置100の構成について説明する。図4は、実施形態にかかるロボット装置100を制御するための機能的構成を模式的に示す図である。ロボット装置100は、入出力部110と、図2および図3を用いて説明したような処理をアクチュエーター130に行わせるための制御処理を行う制御装置120と、アクチュエーター130とを有する。なお、アクチュエーター130は、アーム20の動作を直接的に制御する処理部であるため駆動部130と言い換えることもできる。
(入出力部110について)
 図4に示すように、入出力部110は、撮像部110aと、集音部110bと、出力部110cと、距離センサー110dとを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、入出力部110の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、入出力部110が有する各処理部の接続関係は、図4に示した接続関係に限られず、他の接続関係であってもよい。
(撮像部110aについて)
 撮像部110aは、ロボット装置100の周辺環境の撮像を行う。例えば、ロボット装置100が図1に示すような人型ロボットである場合には、撮像部110aはロボット装置100の目に相当する。また、撮像部110aは、撮像によって得られた撮像情報(周辺環境を示す環境情報)を制御装置120に送信する。
(集音部110bについて)
 集音部110bは、周辺環境の環境音を集音する。例えば、ロボット装置100が図1に示すような人型ロボットである場合には、集音部110bはロボット装置100の耳に相当する。また、集音部110bは、集音によって得られた音声情報を制御装置120に送信する。
(出力部110cについて)
 出力部110cは、所定の情報を出力する。例えば、出力部110cは、後述する認識部122bによってロボット装置100を中心とする所定範囲内に人物が居ることが認識された場合や、ロボット装置100が危険性の高い器具(包丁等)を使用する場合には、危険である旨を人物に対して出力する。例えば、出力部110cは、かかる情報を音声出力してもよい、ロボット装置100が表示部(例えば、ディスプレイ装置)を有する場合には、かかる情報を表示部に表示させてもよい。例えば、ロボット装置100が図1に示すような人型ロボットである場合には、出力部110cはロボット装置100の口に相当する。
(距離センサー110dについて)
 距離センサー110dは、人物や障害物までの距離を検出する。例えば、距離センサ―110dは、撮像部110aによる撮像情報に基づいて、人物や障害物までの距離を検出する。また、距離センサー110dは、検出した距離を制御装置120に送信する。
(制御装置120について)
 制御装置120は、実施形態にかかる制御処理を行う装置である。具体的には、制御装置120は、ロボット装置100が実行するタスクに基づいて、タスクに応じた関節部に対応するストッパーを制御することにより、アームの可動範囲を制限する。図4に示すように、制御装置120は、記憶部121と、制御部122とを有する。
(記憶部121について)
 記憶部121は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部121は、タスク情報記憶部121aを有する。
(タスク情報記憶部121aについて)
 タスク情報記憶部121aは、タスクに対応する可動範囲に関する情報を記憶する。ここで、図5に実施形態にかかるタスク情報記憶部121aの一例を示す。図5の例では、タスク情報記憶部121aは、「タスクID」、「タスク」、「モード」、「アーム」、「ピッチ」、「ロール」、「ヨー」といった項目を有する。
 「タスクID」は、タスクを識別する識別情報を示す。「タスク」は、「タスクID」によって識別されるタスクの内容を示す。「モード」は、ロボット装置100(より詳細には、アーム20)の動作のモードであって、可動範囲に対応するモードを示す。わかりやすくいうと、「モード」は、ロボット装置100をどのようなモードに設定すれば、どのような可動範囲で動作するよう制御されるかといった場合において、このモードを示すものである。
 「アーム」は、図2に示すアーム20のうち、「タスクID」によって識別されるタスクを実行するうえで、可動範囲を制御する必要のあるアームを示す。
 ここで、本実施形態では、可動範囲は、ピッチ軸、ロール軸、ヨー軸といった3つの回転軸それぞれでの回転での回転角の範囲である。このため、「ピッチ」は、ピッチ軸での回転(ピッチ回り)についての回転角範囲を示す。また、「ロール」は、ロール軸での回転(ロール回り)についての回転角範囲を示す。また、「ヨー」は、ヨー軸での回転(ヨー回り)についての回転角範囲を示す。
 すなわち、図5の例では、タスクID「T1」によって識別されるタスクは「作業台に置いてある野菜を取る」といった内容のタスクである例を示す。また、図5の例では、ロボット装置100が、タスクID「T1」によって識別されるタスクを行うよう指示された場合には、制御モードを「初期モード」に設定し、第1関節部1Yに対応するストッパーを制御することにより、第1アーム1Lの可動範囲であってピッチ回りの可動範囲を「-50deg~180deg」に制限されている例を示す。また、制御モードを「初期モード」に設定し、第1関節部1Yに対応するストッパーを制御することにより、第1アーム1Lの可動範囲であってロール回りの可動範囲を「0deg~0deg」に制限する指定されている例を示す。また、制御モードを「初期モード」に設定し、第1関節部1Yに対応するストッパーを制御することにより、第1アーム1Lの可動範囲であってヨー回りの可動範囲を「0deg~0deg」に制限する指定されている例を示す。なお、可動範囲「0deg~0deg」は、第1アーム1Lがその回転方向には一切回転しないようストッパーを用いて完全にロックすることを意味する。
 図4に戻り、制御部122は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、制御装置120内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部112は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
 図4に示すように、制御部122は、受付部122aと、認識部122bと、特定部122cと、判定部122dと、決定部122eと、動作制御部122fとを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部122の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部122が有する各処理部の接続関係は、図4に示した接続関係に限られず、他の接続関係であってもよい。
(受付部122aについて)
 受付部122aは、タスクを受け付ける。例えば、受付部122aは、ロボット装置100のユーザからタスクを受け付ける。例えば、ユーザがロボット装置100に対してタスクの内容を発話した場合には、受付部122aは、タスクの内容を示す発話情報を受け付ける。また、例えば、ユーザがロボット装置100に対してタスクの内容に応じたタスクIDを入力した場合には、受付部122aは、そのタスクIDを受け付ける。なお、ユーザは、ロボット装置100に対して直接タスクを入力することもできるし、所定の端末装置(例えば、パソコンやスマートフォン等)を用いて、ネットワークを介して、タスクを入力することもできる。
(認識部122bについて)
 認識部122bは、入出力部110のうち撮像部110a、集音部110b、距離センサー110dといった入力部から得られる情報に基づいて、ロボット装置100の周囲の環境の認識を行う。また、認識部122bは、認識した環境情報を特定部122cに送信する。
(特定部122cについて)
 特定部122cは、ロボット装置100がタスクを実行するうえで必要なパラメータを特定する。例えば、特定部122cは、パラメータとして、タスクの対象となる対象物に関する情報を特定する。例えば、特定部122cは、タスクの対象となる対象物に関する情報として、少なくとも対象物の名称、対象物のサイズ、対象物の強度、対象物の剛性、対象物の重量、対象物に対する目標値(例えば、ニンジンをどれだけの深さ(目標値の一例)まで切るか等)を特定する。例えば、「ニンジンを切る」といったタスクが与えられた場合、対象物は「ニンジン」となる。例えば、特定部122cは、受付部122aによってタスクが受け付けられた場合に、ロボット装置100がタスクを実行するうえで必要なパラメータを特定する。
 また、特定部122cは、タスクに基づいて、ロボット装置100が有する関節部のうち、当該タスクを実行するうえで稼働させる必要がある関節部を特定する。例えば、特定部122cは、タスクの対象となる対象物に関する情報に基づいて、ロボット装置100が有する関節部のうち、当該タスクを実行するうえで稼働させる必要がある関節部を特定する。ここで、対象物に関する情報とは、上述したパラメータである。
 また、特定部122cは、タスクに基づいて、上記特定した関節部に対応するリンク、すなわちアーム20について、タスクを実行するうえで必要な可動範囲を算出(特定)する。例えば、特定部122cは、タスクの対象となる対象物に関する情報に基づいて、上記特定した関節部に対応するリンク、すなわちアーム20について、タスクを実行するうえで必要な可動範囲を算出(特定)する。ここで、対象物に関する情報とは、上述したパラメータである。
 また、特定部122cは、タスクを実行するうえで必要なトルクを算出(特定)する。例えば、特定部122cは、タスクの対象となる対象物に関する情報(パラメータ)に基づいて、タスクを実行するうえで必要なトルクを算出(特定)する。例えば、「ニンジンを切る」といったタスクが与えられた場合、特定部122cは、ニンジンを切るのに必要なトルクを算出する。例えば、特定部122cは、ニンジンの強度、剛性、重量等に基づいて、ニンジンを切るのに必要なトルクを算出する。
 また、特定部122cは、タスクが行われる際のロボット装置100の周辺環境をさらに考慮して、可動範囲を算出することもできる。例えば、特定部122cは、認識部122bによって認識された環境情報に基づいて、可動範囲を算出する。これにより、制御装置120は、例えば、ロボット装置100の付近に人物が存在し、また、ロボット装置100がタスクの中で危険性の高い器具等を使用する場合には、人物に影響がなく、かつ、タスクを実行可能な範囲で、可動範囲とトルクを算出することができる。この結果、制御装置120は、ロボット装置100がタスクを実行する際の周囲に対する安全性を確保することができる。
 また、特定部122cは、後述する判定部122dにより判定された危険性、すなわちタスクが行われる際の危険性に基づいて、可動範囲を算出することもできる。例えば、特定部122cは、ロボット装置100がタスクの中で刃物を使用する等により、判定部122dによりタスクに所定値以上の危険性が伴っていることが判定された場合には、ある基準となる可動範囲よりも狭い可動範囲を算出する。これにより、ロボット装置100がタスクの中で刃物等危険性の高い器具を使用する場合等であっても、ロボット装置100は限られた狭い領域の中でしか、この器具を使用することができなくなるため、制御装置120は、周囲の人物への危険性を最小限に抑えることができる。
 また、図2および図3の例を用いると、特定部122cは、タスクに基づいて、第1関節部1Y、第2関節部2Y、第3関節部3Yのうち、タスクに必要な関節部を特定する。例えば、特定部122cは、第1関節部1Y、第2関節部2Y、第3関節部3Yの全てが必要であると特定した場合には、タスクに基づいて、第1関節部1Yおよび第2関節部2Yをリンクする第1アーム1Lについて第1可動範囲を特定し、第2関節部2Yと第3関節部3Yとをリンクする第2アーム2Lについて第2の可動範囲を特定し、第3関節部3Yにリンクされる第3アーム3Lについて第3の可動範囲を特定する。
 また、特定部122cは、第1関節部1Y、第2関節部2Y、第3関節部3Yに対応するアクチュエーターの有するモーターのトルクを算出する。
(判定部122dについて)
 判定部122dは、ロボット装置100の周辺環境およびタスクの中でロボット装置100が使用する使用物(例えば、器具)の状況に基づいて、特定部122cにより算出された可動範囲でタスクが行われる場合の危険性を判定する。例えば、判定部122dは、ロボット装置100の周辺環境として、ロボット装置100から所定範囲内における人物の有無に基づいて、特定部122cにより算出された可動範囲でタスクが行われる場合の危険性を判定する。
 例えば、判定部122dは、ロボット装置100に対してより近くに人物が居るほど危険性が高いと判定する。また、例えば、判定部122dは、器具が刃物を有する場合には、危険性が高いと判定する。また、例えば、判定部122dは、器具が火器(例えば、コンロ等)である場合には、危険性が高いと判定する。
 また、例えば、判定部122dは、器具の内容物に基づいて、危険性を判定する。例えば、判定部122dは、器具の内容物がアルコール類や有害物質である場合には、危険性が高いと判定する。また、例えば、判定部122dは、ロボット装置100が熱湯を扱う場合には、危険性が高いと判定する。
 なお、判定部122dは、危険性がどれほど高いかといった危険性を示す指標を用いて、危険性を判定してもよい。例えば、危険性を示す指標値として5段階の値(例えば、1~5)が存在する場合、判定部122dは、危険性が最低ランク(安全である)であると判定した場合には、指標値1を算出する。一方、判定部122dは、危険性が最高ランクであると判定した場合には、指標値5を算出する。
(決定部122eについて)
 決定部122eは、判定部122dにより判定された危険性に基づいて、タスクを実行するために使用される使用物の取扱いに関する情報を決定する。例えば、決定部122eは、使用物の取扱いに関する情報として、使用物を把持する際の使用物の向きであって、人物に対する向きを決定する。例えば、使用物が刃物である場合には、決定部122eは、刃先および刃の向きを人に対して逆の方向に決定する。
 また、決定部122eは、使用物の取扱いに関する情報として、使用物を把持する際の把持力を決定する。例えば、使用物の危険性が高い程、安定して把持することが要求される。したがって、決定部122eは、使用物の危険性が高い程、高い把持力を決定する。ただし、使用物によっては、把持力が高すぎると、破損してしまう恐れもある。このため、決定部122eは、使用物の危険性と、使用物が何であるかに基づいて、最適な把持力を決定する。例えば、図2の例では、使用物を把持するのは、第3アーム3Lである。したがって、決定部122eは、第3アーム3Lに対する把持力を決定する。また、決定部122eは、決定した内容でアーム20が稼働させられるよう、決定した内容を示す決定情報を動作制御部122fに送信する。
(動作制御部122fについて)
 動作制御部122fは、ロボット装置100が実行するタスクに基づいて、所定の関節部に対応する前記制限部を制御することにより、部材の可動範囲を制限する。例えば、動作制御部122fは、所定の関節部として、タスクに基づき特定部122cにより特定された関節部に対応するストッパーを制御する。具体的には、動作制御部122fは、所定の関節部として、タスクの対象となる対象物に関する情報に基づき特定部122cにより特定された関節部に対応するストッパーを制御する。具体的には、動作制御部122fは、タスクの対象となる対象物に関する情報に基づき特定部122cにより特定された可動範囲内で動作するよう所定の関節部に対応するストッパーを制御する。
 また、動作制御部122fは、タスクが行われる際のロボットの周辺環境に基づき特定部122cにより特定された可動範囲内で動作するよう所定の関節部に対応するストッパーを制御する。また、動作制御部122fは、タスクが行われる際の危険性に基づき特定部122cにより特定された可動範囲内で動作するよう所定の関節部に対応するストッパーを制御する。
 また、動作制御部122fは、所定の関節部として、少なくとも1以上の軸を中心に回転可能な関節部のうち、所定の軸を中心に回転可能な関節部に対応するストッパーを制御することにより、リンクが所定の軸を中心に回転する際の可動範囲を制御する。
 また、動作制御部122fは、ストッパーを制御することで、ストッパーとリンクとを当接させることにより、リンクの可動範囲を制限する。つまり、動作制御部122fは、ストッパーをリンクに係止させることにより、リンクの可動範囲を制限する。
 上記の点について、より詳細に説明する。動作制御部122fは、ロボット装置100が実行するタスクに基づいて、所定の関節部に対応するストッパーを制御することにより、アーム20の可動範囲を制限する。具体的には、動作制御部122fは、アクチュエーターを介してストッパーを制御することにより、アーム20の可動範囲を制限する。例えば、動作制御部122fは、所定の関節部として、タスクに応じた関節部に対応するストッパーを制御することにより、当該関節部に対応するアーム20がタスクに応じた可動範囲内でしか動作しないよう当該アーム20の可動範囲を制限する。
 例えば、動作制御部122fは、ストッパーに対してアーム20を係止させることにより、アーム20の可動範囲を制限する。例えば、図2(b)に示すように、動作制御部122fは、ストッパーを直動伸縮させてアーム20を係止させることにより、アーム20の可動範囲をタスクに応じた可動範囲に制限する。また、例えば、図3(b)に示すように、動作制御部122fは、ストッパーと関節部が有する歯止めHとの間の溝状空間をストッパーを回転させることにより制御し、制御した溝状空間を形成するストッパーと歯止めHとの作用によってアーム20を係止させることにより、アーム20の可動範囲をタスクに応じた可動範囲に制限する。
 また、特定部122cが各種パラメータを特定する例を示したが、動作制御部122fは、特定部122cにより特定されたパラメータに基づいて、所定の関節部に対応するストッパーを制御することにより、アーム20の可動範囲を制限する。例えば、特定部122cは、アーム20毎に可動範囲を特定し、動作制御部122fは、アーム20毎に当該アーム20の可動範囲を制限する。
 例えば、ロボット装置100が、与えられたタスクを実行するうえで、第1アーム1Lを動かす必要がある場合には、動作制御部122fは、図3に示すように、第1関節部1Yに対応する第1ストッパーであるストッパーST1aおよびST1bを制御することにより、第1アーム1Lの可動範囲を第1可動範囲に制限する。また、例えば、ロボット装置100が、与えられたタスクを実行するうえで、第2アーム2Lを動かす必要がある場合には、動作制御部122fは、図2に示すように、第2関節部2Yに対応する第2ストッパーであるストッパーST2aおよびST2bを制御することにより、第2アーム2Lの可動範囲を第2可動範囲に制限する。また、例えば、ロボット装置100が、与えられたタスクを実行するうえで、第3アーム3Lを動かす必要がある場合には、動作制御部122fは、図2に示すように、第3関節部3Yに対応する第3ストッパーであるストッパーST3aおよびST3bを制御することにより、第3アーム3Lの可動範囲を第3可動範囲に制限する。
(アクチュエーター130について)
 アクチュエーター130は、ロボット装置100の各関節部に搭載され、当該関節部の駆動を制御することで、当該関節部に対応するリンク(例えば、アーム20)の動作を制御する。また、アクチュエーター130は、ストッパーを制御することにより、リンクの可動範囲を制限する。図4に示すように、アクチュエーター130は、リンクの可動範囲を制限するストッパーを有する。
 図4では不図示であるが、アクチュエーター130は、各関節部におけるロール、ピッチ、ヨーなど軸毎に設けられた複数の駆動ユニットで構成される。そして、各駆動ユニットは、所定軸回りの回転動作を行なうモーターと、モーターの回転位置を検出するエンコーダーと、エンコーダーの出力に基づいてモーターの回転位置や回転速度を適応的に制御するドライバーの組み合わせで構成される。
 図2および図3で説明したように、アクチュエーター130は、例えば、第1関節部1Yに搭載され、ピッチ回りの回転制御を行うアクチュエーター131-1aおよびアクチュエーター131-1b(ピッチ軸アクチュエーター131-1)、第2関節部2Yに搭載され、ピッチ回りの回転制御を行うアクチュエーター131-2aおよびアクチュエーター131-2b(ピッチ軸アクチュエーター131-2)、第3関節部3Yに搭載され、ピッチ回りの回転制御を行うアクチュエーター131-3aおよびアクチュエーター131-3b(ピッチ軸アクチュエーター131-3)を有する。
 また、ピッチ軸アクチュエーター131-1のうち、アクチュエーター131-1aは、図3の通り、ストッパーST1aを制御することにより、第1アーム1Lのピッチ回り(時計回り)の可動範囲を制限する。ピッチ軸アクチュエーター131-1のうち、アクチュエーター131-1bは、図3の通り、ストッパーST1bを制御することにより、第1アーム1Lのピッチ回り(反時計回り)の可動範囲を制限する。
 また、ピッチ軸アクチュエーター131-2のうち、アクチュエーター131-2aは、図2の通り、ストッパーST2aを制御することにより、第2アーム2Lのピッチ回り(時計回り)の可動範囲を制限する。ピッチ軸アクチュエーター131-2のうち、アクチュエーター131-2bは、図2の通り、ストッパーST2bを制御することにより、第2アーム2Lのピッチ回り(反時計回り)の可動範囲を制限する。
 また、ピッチ軸アクチュエーター131-2のうち、アクチュエーター131-2aは、図2の通り、ストッパーST2aを制御することにより、第2アーム2Lのピッチ回り(時計回り)の可動範囲を制限する。ピッチ軸アクチュエーター131-2のうち、アクチュエーター131-2bは、図2の通り、ストッパーST2bを制御することにより、第2アーム2Lのピッチ回り(反時計回り)の可動範囲を制限する。
 また、ピッチ軸アクチュエーター131-3のうち、アクチュエーター131-3aは、図2の通り、ストッパーST3aを制御することにより、第3アーム3Lのピッチ回り(時計回り)の可動範囲を制限する。ピッチ軸アクチュエーター131-3のうち、アクチュエーター131-3bは、図2の通り、ストッパーST3bを制御することにより、第2アーム2Lのピッチ回り(反時計回り)の可動範囲を制限する。
 ここで、図6を用いて、アクチュエーター130を駆動させる駆動源について説明する。図6は、アクチュエーター130が有するモーターの運動を実現する駆動源の一例を示す図である。アクチュエーター130が有するモーターの運動を実現する駆動源としては、油圧ポンプまたは空圧ポンプがある。実施形態にかかるアクチュエーター130には、このいずれかが採用されてもよい。
 図6(a)の例では、アクチュエーター131-3bに油圧ポンプP1が接続されている。例えば、ロボット装置100には、電送機またはエンジンが搭載されており、電送機またはエンジンは、油圧ポンプP1を駆動する。そうすると、油圧ポンプP1は、アクチュエーター131-3bに油圧を供給する。アクチュエーター131-3bのモーターは、この油圧によって、例えば、回転運動を行う。なお、油圧ポンプP1は、アクチュエーター131-3bだけでなく、アクチュエーター131-1a、アクチュエーター131-1b、アクチュエーター131-2a、アクチュエーター131-2b、アクチュエーター131-3aにも接続される。
 また、図6(b)の例では、アクチュエーター131-3bに空圧ポンプP2が接続されている。例えば、ロボット装置100には、電送機またはエンジンが搭載されており、電送機またはエンジンは、空圧ポンプP2を駆動する。そうすると、空圧ポンプP2は、アクチュエーター131-3bに空圧を供給する。アクチュエーター131-3bのモーターは、この空圧によって、例えば、回転運動を行う。なお、空圧ポンプP2は、アクチュエーター131-3bだけでなく、アクチュエーター131-1a、アクチュエーター131-1b、アクチュエーター131-2a、アクチュエーター131-2b、アクチュエーター131-3aにも接続される。
〔4.制御処理の一例〕
 さて、以下では、実施形態にかかる制御処理の一例について説明する。具体的には、制御装置120が実行する制御処理の一例について説明する。以下では、図2および図3を用いて、実施形態にかかる制御処理の一例について説明する。ここでは、ロボット装置100が、図5に示すタスクT1~T4のうち、タスクT3を行う場合における制御装置120の制御処理を一例として示すことにする。なお、ここでは、タスクT3をピックアップして説明するが、その他のタスクでも制御装置120が行う制御処理に変わりはない。また、ロボット装置100は、タスクT3よりも前のタスク(例えば、タスクT1およびT2)により、既に作業台にタスクT3の対象となる対象物O1(ニンジン)を置いているものとする。
 まず、受付部122aがタスクT3の指示をユーザから受け付けたとする。かかる場合、認識部122bは、撮像部110aによって取得された環境情報や、距離センサーによって取得された距離に基づいて、ロボット装置100の周囲の環境の認識を行う。そして、認識部122bは、認識によって得られた環境情報を特定部122cに送信する。
 次に、特定部122cは、タスクT3に基づいて、ロボット装置100の部位のうち、タスクT3で駆動させるべき関節部を特定する。ここでは、特定部122cは、第1関節部1Y、第2関節部2Y、第3関節部3Yを特定したものとする。なお、このことは、特定部122cが、タスクT3に基づいて、タスクT3で駆動させるべきアーム20として、第1アーム1L、第2アーム2L、第3アーム3Lを特定した、と言い換えることができる。
 また、特定部122cは、タスクT3の内容および環境情報に基づいて、パラメータとして、タスクT3の対象となる対象物に関する情報を特定する。例えば、特定部122cは、タスクT3の対象となる対象物に関する情報として、少なくとも対象物の名称、対象物のサイズ、対象物の強度、対象物の剛性、対象物の重量、対象物に対して達成すべき目標値を特定する。タスクT3での対象物は「ニンジン」である。したがって、特定部122cは、対象物がニンジンであること、ニンジンのサイズ、ニンジンの強度、ニンジンの剛性、ニンジンの重量、ニンジンをどれだけ切断するのか(対象物に対して達成すべき目標値の一例)を特定する。
 また、特定部122cは、上記特定した対象物に関する情報に基づいて、タスクT3を実行するうえで必要な可動範囲であってアーム20の可動範囲と、タスクT3を実行するうえで必要なトルクを算出(特定)する。具体的には、特定部122cは、上記特定した対象物に関する情報および環境情報に基づいて、第1アーム1L、第2アーム2L、第3アーム3Lそれぞれに対して、タスクT3を実行するうえで必要な可動範囲と、タスクT3を実行するうえで必要なトルクを算出(特定)する。
 例えば、特定部122cは、タスク情報記憶部121aを参照することで、可動範囲を算出する。例えば、特定部122cは、タスク情報記憶部121aに記憶される各軸での可動範囲(回転角範囲)のうち、タスクID「T3」が対応付けられる可動範囲であって各軸での可動範囲を抽出する。
 図5の例では、特定部122cは、第1アーム1Lについて、ピッチ回りの可動範囲として「0deg~25deg」、ロール回りの可動範囲として「0deg~0deg」、ヨー回りの可動範囲として「0deg~0deg」を特定する。また、特定部122cは、第2アーム2Lについて、ピッチ回りの可動範囲として「70deg~90deg」、ロール回りの可動範囲として「0deg~0deg」、ヨー回りの可動範囲として「0deg~0deg」を特定する。また、特定部122cは、第3アーム3Lについて、ピッチ回りの可動範囲として「0deg~0deg」、ロール回りの可動範囲として「0deg~0deg」、ヨー回りの可動範囲として「0deg~0deg」を特定する。
 ここで、例えば、人間が包丁で切る作業を行う場合、主に上腕および前腕を上下に細かく動かす一方で、手首はほとんど動かさない。このようなことにならって、特定部122cは、上記のような可動範囲を算出する。つまり、上腕に対応する第1アーム1Lにおける、ピッチ回りの可動範囲は「0deg~25deg」といったように比較的狭い範囲でよく(細かい作業であるため)、同様に、前腕に対応する第2アーム2Lにおける、ピッチ回りの可動範囲は「70deg~90deg」といったように比較的狭い範囲でよい(細かい作業であるため)。また、手のひら(手首)に対応する第3アーム3Lはほとんど動かさなくてよいため、ピッチ回りの可動範囲は「0deg~0deg」でよい。
 また、人間が包丁で切る作業を行う場合、腕をロールさせたり左右に動かすことはない(切る作業では、腕を上下に動かしさえすればよい)。このようなことにならって、特定部122cは、上記のような可動範囲を算出する。つまり、上腕に対応する第1アーム1Lにおけるロール回りおよびヨー回りの動きは、切る作業の中では不要であるため、可動範囲は「0deg~0deg」(完全ロック)でよい。同様に、前腕に対応する第2アーム2Lにおけるロール回りおよびヨー回りの動きは、切る作業の中では不要であるため、可動範囲は「0deg~0deg」(完全ロック)でよい。同様に、手のひらに対応する第3アーム3Lにおけるロール回りおよびヨー回りの動きは、切る作業の中では不要であるため、可動範囲は「0deg~0deg」(完全ロック)でよい。
 また、特定部122cは、タスク情報記憶部121aに記憶されている可動範囲をそのまま採用するのではなく、タスク情報記憶部121aから抽出した可動範囲と、環境情報とに基づいて、抽出した可動範囲をより狭める等の調整を加えてもよい。また、特定部122cは、タスク情報記憶部121aに記憶されている可動範囲を用いることなく、可動範囲を算出してもよい。
 そして、特定部122cは、特定した可動範囲とトルクとを示す情報を動作制御部122fに送信する。動作制御部122fは、特定部122cから取得した情報に基づいて、タスクT3に対応するストッパーを制御することにより、アーム20の可動範囲を制限する。具体的には、動作制御部122fは、特定部122cから取得した情報に基づいて、ストッパーをどのように移動させれば、特定部122cにより特定された可動範囲となるかといった制御情報を算出し、算出した制御情報でストッパーを移動させるよう、アクチュエーター130を制御する。
 始めに、第1アーム1Lの可動範囲の制限について説明する。例えば、動作制御部122fは、ストッパーST1aをピッチ回り(時計回り)にどれだけの距離を回転移動させれば、それにより調整される溝状構造SP1aの広さによって、第1アーム1Lのピッチ回りでの可動範囲が「0deg~25deg」となるかを示す制御情報X1aを算出する。また、動作制御部122fは、ストッパーST1bをピッチ回り(反時計回り)にどれだけの距離を回転移動させれば、それにより調整される溝状構造SP1bの広さによって、第1アーム1Lのピッチ回りでの可動範囲が「0deg~25deg」となるかを示す制御情報X1bを算出する。
 そして、動作制御部122fは、算出した制御情報X1aおよび制御情報X1bをピッチ軸アクチュエーター131-1に送信することにより、ピッチ軸アクチュエーター131-1に対して、制御情報X1aおよび制御情報X1bの通り、ストッパーST1aおよびST1bを回転移動させるよう制御する。
 例えば、動作制御部122fは、算出した制御情報X1aをアクチュエーター131-1aに送信することにより、アクチュエーター131-1aに対して、制御情報X1aの通り、ストッパーST1aを回転移動させるよう制御する。アクチュエーター131-1aは、制御情報X1aを受信すると、受信した制御情報X1aに従って、ストッパーST1aを時計回りに回転移動させる。また、動作制御部122fは、算出した制御情報X1bをアクチュエーター131-1bに送信することにより、アクチュエーター131-1bに対して、制御情報X1bの通り、ストッパーST1bを回転移動させるよう制御する。アクチュエーター131-1bは、制御情報X1bを受信すると、受信した制御情報X1aに従って、ストッパーST1aを反時計回りに回転移動させる。
 これにより、例えば、第1アーム1Lに対して外部からの力が掛かることにより、第1アーム1Lが「25deg」を超えてピッチ回り(時計回り)に回転してしまう可能性がある場合でも、ストッパーST1aと歯止めHとの当接により、ストッパーST1aと歯止めHとで形成される溝状構造SP1aの広さの範囲でしか第1アーム1Lは回転することができない。すなわち、第1アーム1Lが「25deg」を超えてピッチ回り(時計回り)に回転しないようストッパーST1aと歯止めHとが当接する。また、第1アーム1Lに対して外部からの力が掛かることにより、第1アーム1Lが「0deg」を超えてピッチ回り(反時計回り)に回転してしまう可能性がある場合でも、ストッパーST1bと歯止めHとの当接により、ストッパーST1bと歯止めHとで形成される溝状構造SP1aの広さの範囲でしか第1アーム1Lは回転することができない。すなわち、第1アーム1Lが「0deg」を超えてピッチ回り(時計回り)に回転しないようストッパーST1bと歯止めHとが当接する。
 また、動作制御部122fは、ピッチ軸アクチュエーター131-1に対して、第1関節部1Yを駆動させる際のトルク情報を送信する。
 次に、第2アーム2Lの可動範囲の制限について説明する。例えば、動作制御部122fは、ストッパーST2aを直線方向にどれだけの距離を伸延させれば、図2(b)に示すように第2アーム2Lの上端が伸延されたストッパーST2aにより係止され、第2アーム2Lのピッチ回りでの可動範囲が「70deg~90deg」となるかを示す制御情報X2aを算出する。また、動作制御部122fは、ストッパーST2bを直線方向にどれだけの距離を伸延させれば、図2(b)に示すように第2アーム2Lの下端が伸延されたストッパーST2bにより係止され、第2アーム2Lのピッチ回りでの可動範囲が「70deg~90deg」となるかを示す制御情報X2bを算出する。
 そして、動作制御部122fは、算出した制御情報X2aおよび制御情報X2bをピッチ軸アクチュエーター131-2に送信することにより、ピッチ軸アクチュエーター131-2に対して、制御情報X2aおよび制御情報X2bの通り、ストッパーST2aおよびST2bを回転移動させるよう制御する。
 例えば、動作制御部122fは、算出した制御情報X2aをアクチュエーター131-2aに送信することにより、アクチュエーター131-2aに対して、制御情報X2aの通り、ストッパーST2aを伸延させるよう制御する。アクチュエーター131-2aは、制御情報X2aを受信すると、受信した制御情報X2aに従って、ストッパーST2aを真っ直ぐ伸延させる。また、動作制御部122fは、算出した制御情報X2bをアクチュエーター131-2bに送信することにより、アクチュエーター131-2bに対して、制御情報X2bの通り、ストッパーST2bを伸延させるよう制御する。アクチュエーター131-2bは、制御情報X2bを受信すると、受信した制御情報X2aに従って、ストッパーST2aを真っ直ぐ伸延させる。
 これにより、例えば、第2アーム2Lに対して外部からの力が掛かることにより、第2アーム2Lが「90deg」を超えてピッチ回り(時計回り)に回転してしまう可能性がある場合でも、ストッパーST2aがつっかえ棒の役割となり、物理的に係止する。すなわち、ストッパーST2aは、第2アーム2Lが「90deg」を超えてピッチ回り(時計回り)に回転しないような方向に第2アーム2Lに対して物理的な力を与えることで、第2アーム2Lを係止する。また、例えば、第2アーム2Lに対して外部からの力が掛かることにより、第2アーム2Lが「70deg」を超えてピッチ回り(反時計回り)に回転してしまう可能性がある場合でも、ストッパーST2bがつっかえ棒の役割となり、物理的に係止する。すなわち、ストッパーST2bは、第2アーム2Lが「70deg」を超えてピッチ回り(反時計回り)に回転しないような方向に第2アーム2Lに対して物理的な力を与えることで、第2アーム2Lを係止する。
 次に、第3アーム3Lの可動範囲の制限について説明する。例えば、動作制御部122fは、ストッパーST3aを直線方向にどれだけの距離を伸延させれば、図2(b)に示すように第3アーム3Lの上端が伸延されたストッパーST3aにより係止され、第2アーム2Lのピッチ回りでの可動範囲が「0deg~0deg」となるかを示す制御情報X3aを算出する。また、動作制御部122fは、ストッパーST3bを直線方向にどれだけの距離を伸延させれば、図2(b)に示すように第3アーム3Lの下端が伸延されたストッパーST2bにより係止され、第3アーム3Lのピッチ回りでの可動範囲が「0deg~0deg」となるかを示す制御情報X3bを算出する。
 そして、動作制御部122fは、算出した制御情報X3aおよび制御情報X3bをピッチ軸アクチュエーター131-3に送信することにより、ピッチ軸アクチュエーター131-3に対して、制御情報X3aおよび制御情報X3bの通り、ストッパーST3aおよびST3bを回転移動させるよう制御する。
 例えば、動作制御部122fは、算出した制御情報X3aをアクチュエーター131-3aに送信することにより、アクチュエーター131-3aに対して、制御情報X3aの通り、ストッパーST2aを伸延させるよう制御する。アクチュエーター131-3aは、制御情報X3aを受信すると、受信した制御情報X3aに従って、ストッパーST3aを真っ直ぐ伸延させる。また、動作制御部122fは、算出した制御情報X3bをアクチュエーター131-3bに送信することにより、アクチュエーター131-3bに対して、制御情報X3bの通り、ストッパーST3bを伸延させるよう制御する。アクチュエーター131-3bは、制御情報X3bを受信すると、受信した制御情報X3aに従って、ストッパーST3aを真っ直ぐ伸延させる。
 これにより、例えば、第3アーム3Lに対して外部からの力が掛かることにより、第3アーム3Lが「0deg」を超えてピッチ回り(時計回り)に回転してしまう可能性がある場合でも、ストッパーST3aがつっかえ棒の役割となり、物理的に係止する。すなわち、ストッパーST3aは、第3アーム3Lが「0deg」を超えてピッチ回り(時計回り)に回転しないような方向に第2アーム2Lに対して物理的な力を与えることで、第3アーム3Lを係止する。また、例えば、第3アーム3Lに対して外部からの力が掛かることにより、第3アーム3Lが「0deg」を超えてピッチ回り(反時計回り)に回転してしまう可能性がある場合でも、ストッパーST3bがつっかえ棒の役割となり、物理的に係止する。すなわち、ストッパーST3bは、第3アーム3Lが「0deg」を超えてピッチ回り(反時計回り)に回転しないような方向に第3アーム3Lに対して物理的な力を与えることで、第3アーム3Lを係止する。
 また、ロボット装置100は、アクチュエーター130による制御処理が完了すると、タスクT3を実行する。具体的には、ロボット装置100は、器具E1である包丁を把持し、器具E1で対象物O1を切る作業を行う。ここで、対象物O1(ニンジン)を切断するのに必要なトルク(モーターの回転力)によって生じる力、すなわち対象物O1を切断するための力はT1(N)であるとする。一方、対象物O1を切断する際に、器具E1(包丁)を介して、アーム20が対象物O1から受ける反作用の力はT2(N)であるとする。また、T1<T2が成立しているものとする。
 説明を簡単にするために、ストッパーST3aのみに着目する。また、第3アーム3Lの動きがストッパーST3aにより係止されていない場合を想定する。そうすると、T1<T2が成立していることにより、第3アーム3Lに対応する第3関節部3Yを回転駆動させるモーターのトルクは、T2に耐え切れず、第3アーム3Lは図2(b)に示す点線矢印のような方向に動いてしまう可能性がある。こうなると、対象物O1を切断することは不可能であるし、器具E1の刃先が上部に向いてしまうこともなり危険である。
 一方で、図2(b)に示すように、第3アーム3Lの動きがストッパーST3aにより係止されているものとする。同様に、第3アーム3Lに対応する第3関節部3Yを回転駆動させるモーターのトルクは、T2に耐え切れず、第3アーム3Lは図2(b)に示す点線矢印のような方向に動いてしまおうとするが、このように動いてしまわないようストッパーST3aが第3アーム3Lを係止する。かかる場合、ストッパーST3aは、点線矢印のような方向の力に反発するような方向に、第3アーム3Lに対して力を与えることになるため、第3アーム3Lが対象物O1を切断するための力に対してさらに補助的な力を与えることに貢献する。そうすると、ストッパーST3aが第3アーム3Lの動きを係止する際に発生する力が加わることにより、T1より小さい力で対象物O1を切断することが可能となる。そして、このことは、第3関節部3Yを回転駆動させるモーターのトルクがより小さいトルクで済むことを意味する。
 このように、ストッパーの役割により、タスクを実行するために必要なトルクが小さくなれば、モーターをより小型化することができるようになる。また、例えば、刃先があらぬ方向に向いてしまうような状況をなくすことができるため、安全性を確保することができるようになる。また、これまで説明してきたように、ソフトウェア上でアーム20の可動範囲を制御するとともに、実際にストッパーを用いて物理的に動くに制限をかけることになるため、ソフトウェアによる情報処理での制限と、ストッパーによる物理的な制限といった2重の安全対策を実現することができる。
 以上まとめると、実施形態にかかる制御装置120は、ロボットがタスクを実行する際の周囲に対する安全性を確保することができる。具体的には、制御装置120は、ソフトウェアとストッパー(ハードウェア)による2重の安全対策を実現することができる。また、制御装置120は、関節部のモーターを小型化に貢献することができるため、例えば、かかるモーターをアクチュエーター130が有している場合、アクチュエーター130自体の小型化を実現することができる。
〔5.処理手順〕
 次に、図7を用いて、実施形態にかかる情報処理の手順について説明する。図7は、実施形態にかかる情報処理手順を示すフローチャートである。
 まず、受付部122aは、ユーザからタスクを受け付けたか否かを判定する(ステップS101)。受付部122aは、タスクを受け付けていないと判定した場合には(ステップS101;No)、タスクを受け付けるまで待機する。一方、認識部122bは、受付部122aによりタスクが受け付けられた場合には(ステップS101;Yes)、撮像部110aにより撮像された撮像情報、距離センサー110dにより検出されたセンサー情報を取得する(ステップS102)。
 次に、認識部122bは、取得した情報に基づいて、ロボット装置100の周囲の環境の認識を行う(ステップS103)。また、認識部122bは、タスクの対象となる対象物の認識も行う(ステップS103)。
 次に、特定部122cは、タスクの対象となる対象物に関する情報を特定する(ステップS104)。例えば、特定部122cは、タスクの対象となる対象物に関する情報として、少なくとも対象物の名称、対象物のサイズ、対象物の強度、対象物の剛性、対象物の重量、対象物に対する目標値を特定する。
 次に、特定部122cは、タスクに基づいて、ロボット装置100が有する関節部のうち、タスクを実行するうえで稼働させる必要がある関節部を特定する(ステップS105)。例えば、特定部122cは、ステップS104で特定した対象物に関する情報に基づいて、ロボット装置100が有する関節部のうち、タスクを実行するうえで稼働させる必要がある関節部を特定する。
 次に、タスクに基づいて、タスクに基づいて、ステップS105で特定した関節部に対応する各リンク(アーム20)について、タスクを実行するうえで必要な可動範囲を算出するとともに、タスクを実行するうえで必要なトルク(ステップS105で特定した関節部を駆動するトルク)を算出する(ステップS106)。例えば、特定部122cは、ステップS104で特定した対象物に関する情報に基づいて、可動範囲およびトルクを算出する。
 そして、動作制御部122fは、所定の関節部に対応するストッパー(制限部)を制御することにより、リンクの可動範囲を制限する(ステップS107)。具体的には、動作制御部122fは、所定の関節部として、タスクの対象となる対象物に関する情報に基づき特定部122cにより特定された関節部に対応するストッパーを制御する。また、動作制御部122fは、タスクの対象となる対象物に関する情報に基づき特定部122cにより特定された可動範囲内で動作するよう所定の関節部に対応するストッパーを制御する。
 例えば、動作制御部122fは、リンクの可動範囲がステップS106で特定された可動範囲内でしか操作しないようにするには、ストッパーをどのように移動させればよいかを示す制御情報を算出する。そして、動作制御部122fは、算出した制御情報でストッパーを移動させるようアクチュエーター130を制御する。アクチュエーター130は、動作制御部122fから受信した制御情報に従って、ストッパーを移動させる。
 図7では、不図示であるが、制御装置120は、ステップS107の制御処理が終了した場合には、ロボット装置100に対して、タスクを実行するよう指示してもよい。例えば、制御装置120は、決定部122eにより決定された情報で、使用物が取り扱われるようロボット装置100に指示することができる。例えば、制御装置120は、ロボット装置100に対して、使用物の向きや把持力を指示することができる。
 以上、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
 また、本願の実施形態をいくつかの図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
 また、本明細書に記載された実施形態における効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
 なお、本開示は、以下のような構成にすることもできる。
(1)
 2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制限部と、
 前記ロボットが実行するタスクに基づいて、所定の関節部に対応する前記制限部を制御することにより、前記リンクの可動範囲を制限する制御部と
 を有することを特徴とする制御装置。
(2)
 前記制御部は、前記所定の関節部として、前記タスクに基づき定まる関節部に対応する前記制限部を制御する
 (1)に記載の制御装置。
(3)
 前記制御部は、前記タスクに基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
 (1)または(2)に記載の制御装置。
(4)
 前記制御部は、前記所定の関節部として、前記タスクの対象となる対象物に関する情報に基づき定まる関節部に対応する前記制限部を制御する
 (2)に記載の制御装置。
(5)
 前記制御部は、前記タスクの対象となる対象物に関する情報に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
 (3)に記載の制御装置。
(6)
 前記制御部は、前記タスクの対象となる対象物に関する情報として、少なくとも前記対象物の名称、前記対象物のサイズ、前記対象物の強度、前記対象物の剛性、前記対象物の重量、前記対象物に対する前記タスクの内容のうちのいずれか1つに基づき定まる関節部に対応する前記制限部を制御する
 (4)または(5)の制御装置。
(7)
 前記制御部は、前記所定の関節部として、少なくとも1以上の軸を中心に回転可能な関節部のうち、所定の軸を中心に回転可能な関節部に対応する前記制限部を制御することにより、前記リンクが前記所定の軸を中心に回転する際の可動範囲を制御する
 (1)~(6)のいずれか1つに記載の制御装置。
(8)
 前記制御部は、前記タスクが行われる際の前記ロボットの周辺環境に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
 (1)~(7)のいずれか1つに記載の制御装置。
(9)
 前記制御部は、前記タスクが行われる際の危険性に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
 (1)~(8)のいずれか1つに記載の制御装置。
(10)
 前記制御部は、前記制限部を制御することにより、前記制限部と前記リンクに係止させることにより、前記部材の可動範囲を制限する
 (1)~(9)のいずれか1つに記載の制御装置。
(11)
 2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制御部であって、所定の関節部に対応する制限部を、前記ロボットが実行するタスクに基づいて制御することにより、前記リンクの可動範囲を制限する
 処理を実行する制御方法。
(12)
 2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制御部であって、所定の関節部に対応する制限部を、前記ロボットが実行するタスクに基づいて制御することにより、前記リンクの可動範囲を制限する
 処理を実行させる制御プログラム。
 100 ロボット装置
 110 入出力部
 120 制御装置
 130 アクチュエーター
 131-1 ピッチ軸アクチュエーター
 131-2 ピッチ軸アクチュエーター
 131-3 ピッチ軸アクチュエーター
 1Y 第1関節部
 2Y 第2関節部
 3Y 第3関節部
 1L 第1アーム
 2L 第2アーム
 3L 第3アーム
 ST1a ストッパー
 ST1b ストッパー
 ST2a ストッパー
 ST2b ストッパー
 ST3a ストッパー
 ST3b ストッパー

Claims (12)

  1.  2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制限部と、
     前記ロボットが実行するタスクに基づいて、所定の関節部に対応する前記制限部を制御することにより、前記リンクの可動範囲を制限する制御部と
     を有する制御装置。
  2.  前記制御部は、前記所定の関節部として、前記タスクに基づき定まる関節部に対応する前記制限部を制御する
     請求項1に記載の制御装置。
  3.  前記制御部は、前記タスクに基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
     請求項1に記載の制御装置。
  4.  前記制御部は、前記所定の関節部として、前記タスクの対象となる対象物に関する情報に基づき定まる関節部に対応する前記制限部を制御する
     請求項2に記載の制御装置。
  5.  前記制御部は、前記タスクの対象となる対象物に関する情報に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
     請求項3に記載の制御装置。
  6.  前記制御部は、前記タスクの対象となる対象物に関する情報として、少なくとも前記対象物の名称、前記対象物のサイズ、前記対象物の強度、前記対象物の剛性、前記対象物の重量、前記対象物に対する前記タスクの内容のうちのいずれか1つに基づき定まる関節部に対応する前記制限部を制御する
     請求項4に記載の制御装置。
  7.  前記制御部は、前記所定の関節部として、少なくとも1以上の軸を中心に回転可能な関節部のうち、所定の軸を中心に回転可能な関節部に対応する前記制限部を制御することにより、前記リンクが前記所定の軸を中心に回転する際の可動範囲を制御する
     請求項1に記載の制御装置。
  8.  前記制御部は、前記タスクが行われる際の前記ロボットの周辺環境に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
     請求項1に記載の制御装置。
  9.  前記制御部は、前記タスクが行われる際の危険性に基づき定まる可動範囲内で動作するよう前記所定の関節部に対応する前記制限部を制御する
     請求項1に記載の制御装置。
  10.  前記制御部は、前記制限部を制御することにより、前記制限部と前記リンクに係止させることにより、前記リンクの可動範囲を制限する
     請求項1に記載の制御装置。
  11.  2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制御部であって、所定の関節部に対応する制限部を、前記ロボットが実行するタスクに基づいて制御することにより、前記リンクの可動範囲を制限する
     処理を実行する制御方法。
  12.  2以上のリンクを接合するロボットの関節部に設けられ、前記リンクの動作を物理的に制限する制御部であって、所定の関節部に対応する制限部を、前記ロボットが実行するタスクに基づいて制御することにより、前記リンクの可動範囲を制限する
     処理を実行させる制御プログラム。
PCT/JP2019/034382 2018-10-11 2019-09-02 制御装置、制御方法および制御プログラム WO2020075419A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/281,506 US12030186B2 (en) 2018-10-11 2019-09-02 Control device, control method, and non-transitory computer readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018192875 2018-10-11
JP2018-192875 2018-10-11

Publications (1)

Publication Number Publication Date
WO2020075419A1 true WO2020075419A1 (ja) 2020-04-16

Family

ID=70163681

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/034382 WO2020075419A1 (ja) 2018-10-11 2019-09-02 制御装置、制御方法および制御プログラム

Country Status (1)

Country Link
WO (1) WO2020075419A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023531336A (ja) * 2021-04-14 2023-07-24 達闥機器人股▲分▼有限公司 ロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボット

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02122792U (ja) * 1989-03-20 1990-10-09
JPH0413285U (ja) * 1990-05-17 1992-02-03
JPH10202574A (ja) * 1997-01-17 1998-08-04 Tokico Ltd ロボットの回動角度制限機構
JP2013111718A (ja) * 2011-11-30 2013-06-10 Seiko Epson Corp ロボット
US20180009104A1 (en) * 2016-07-07 2018-01-11 Universal City Studios Llc Movable Hardstop for a Robotic Component

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02122792U (ja) * 1989-03-20 1990-10-09
JPH0413285U (ja) * 1990-05-17 1992-02-03
JPH10202574A (ja) * 1997-01-17 1998-08-04 Tokico Ltd ロボットの回動角度制限機構
JP2013111718A (ja) * 2011-11-30 2013-06-10 Seiko Epson Corp ロボット
US20180009104A1 (en) * 2016-07-07 2018-01-11 Universal City Studios Llc Movable Hardstop for a Robotic Component

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023531336A (ja) * 2021-04-14 2023-07-24 達闥機器人股▲分▼有限公司 ロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボット
JP7490684B2 (ja) 2021-04-14 2024-05-27 達闥機器人股▲分▼有限公司 ロボット制御方法、装置、記憶媒体、電子機器、プログラム製品及びロボット

Also Published As

Publication number Publication date
US20220040858A1 (en) 2022-02-10

Similar Documents

Publication Publication Date Title
US11090814B2 (en) Robot control method
JP4845431B2 (ja) ロボット制御システム
KR102015307B1 (ko) 로봇 및 그 제어 방법
US9132552B2 (en) Robot and friction compensation method therefor
JP7111114B2 (ja) 情報処理装置、情報処理方法及び情報処理システム
JP2008137114A (ja) ロボット、ならびにその制御方法および制御プログラム
JP6659424B2 (ja) ロボットおよびその制御方法
JP2008246607A (ja) ロボット、ロボットの制御方法およびロボットの制御プログラム
JP5223407B2 (ja) 冗長ロボットの教示方法
WO2020075419A1 (ja) 制御装置、制御方法および制御プログラム
JP6319128B2 (ja) 把持ロボット及び把持ロボットの制御方法
JP2014240106A (ja) ロボット、ロボット制御装置およびロボットの駆動方法
WO2019039006A1 (ja) ロボット
JP4033050B2 (ja) ロボットハンドの把持制御装置
US9833898B2 (en) Positioning control apparatus
US11999062B2 (en) Robotic joint control
JP2010247309A (ja) ロボットアーム、及びその制御方法
JP4956964B2 (ja) ロボットハンドの把持制御装置
US12030186B2 (en) Control device, control method, and non-transitory computer readable storage medium
JP6158665B2 (ja) ロボット、ロボット制御方法、およびロボット制御プログラム
JP2006167902A (ja) 双腕ロボットの制御装置および制御方法
JP2003062775A (ja) 人間型ハンドロボット用教示システム
JP4222338B2 (ja) 適応型ビジュアルフィードバック制御方法
JP2023105577A (ja) ロボット遠隔操作制御装置、ロボット遠隔操作制御方法、およびプログラム
JP5456557B2 (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: 19871978

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19871978

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP