WO2021132107A1 - Robot, control method, and program - Google Patents

Robot, control method, and program Download PDF

Info

Publication number
WO2021132107A1
WO2021132107A1 PCT/JP2020/047564 JP2020047564W WO2021132107A1 WO 2021132107 A1 WO2021132107 A1 WO 2021132107A1 JP 2020047564 W JP2020047564 W JP 2020047564W WO 2021132107 A1 WO2021132107 A1 WO 2021132107A1
Authority
WO
WIPO (PCT)
Prior art keywords
end effector
arm
robot
information
model
Prior art date
Application number
PCT/JP2020/047564
Other languages
French (fr)
Japanese (ja)
Inventor
厚太 鍋嶌
悠輔 田中
Original Assignee
株式会社Preferred Networks
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 株式会社Preferred Networks filed Critical 株式会社Preferred Networks
Publication of WO2021132107A1 publication Critical patent/WO2021132107A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/04Gripping heads and other end effectors with provision for the remote detachment or exchange of the head or parts thereof

Definitions

  • the embodiments of the present disclosure relate to robots, control methods and programs.
  • a robot equipped with an arm equipped with an end effector at the tip is known.
  • Such a robot can be equipped with a plurality of types of end effectors. The user selects an appropriate end effector according to the application and attaches it to the arm. This allows the robot to perform a variety of tasks.
  • the vendor when providing a robot for home use, it is conceivable that the vendor will provide various types of end effectors. However, the end effector provided by the vendor alone cannot cause the robot to accomplish the task, and an application program for controlling the robot including the end effector is required. For this reason, the user can request the system integrator to operate the entire robot in a stable manner with the end effectors of various shapes, weights, and functions provided by the vendor attached. I had to write a program.
  • the problem to be solved by the present disclosure is that a robot to which an end effector can be attached operates the end effector in a stable manner.
  • the robot includes an arm to which an end effector can be attached and at least one processor.
  • the at least one processor acquires identification information from the end effector and identifies an end effector model that models the end effector based on the identification information. And, based on the end effector model, at least the robot model used for controlling the arm is updated, and the arm is controlled based on the updated robot model.
  • FIG. 1 is a diagram showing a first example of the appearance of the robot system according to the embodiment.
  • FIG. 2 is a diagram showing a second example of the appearance of the robot system according to the embodiment.
  • FIG. 3 is a diagram showing an example of the functional configuration of the robot.
  • FIG. 4 is a diagram showing an example of the appearance of the tip of the arm.
  • FIG. 5 is a diagram showing an example of the appearance of the mounting surface of the end effector.
  • FIG. 6 is a diagram showing an example of the appearance of the arm-side connector.
  • FIG. 7 is a diagram showing an example of the appearance of the effector side connector.
  • FIG. 8 is a diagram showing an example of a cross section of the shaft portion and the tip of the arm in a state where pressure is applied from the outside.
  • FIG. 8 is a diagram showing an example of a cross section of the shaft portion and the tip of the arm in a state where pressure is applied from the outside.
  • FIG. 9 is a diagram showing an example of a cross section of a shaft portion and an arm tip in a state where pressure from the outside is released.
  • FIG. 10 is a diagram showing an example of a cross section of a connecting portion between the arm and the end effector when the end effector is attached to and detached from the arm.
  • FIG. 11 is a diagram showing an example of a cross section of a connection portion between the arm and the end effector in a state where the end effector is attached from the arm.
  • FIG. 12 is a diagram showing a functional configuration of the information processing device.
  • FIG. 13 is a diagram showing a processing flow of the information processing apparatus when the target information is output from the application program.
  • FIG. 14 is a diagram showing a processing flow of the information processing apparatus when an end effector is attached to the arm.
  • FIG. 15 is a diagram showing a functional configuration of the robot according to the first modification.
  • FIG. 16 is a diagram showing a functional configuration of the information processing apparatus according to the first modification.
  • FIG. 17 is a diagram showing a processing flow of the information processing apparatus when target information is output from the application program in the first modification.
  • FIG. 18 is a diagram showing a functional configuration of the information processing apparatus according to the second modification.
  • FIG. 19 is a diagram showing a processing flow of the information processing apparatus when target information is output from the application program in the second modification.
  • FIG. 20 is a diagram showing a functional configuration of the information processing apparatus according to the third modification.
  • FIG. 21 is a diagram showing an example of the hardware configuration of the information processing device.
  • FIG. 1 is a diagram showing a first example of the appearance of the robot system 10 according to the embodiment.
  • the robot system 10 may include a robot 20, an information processing device 22, and a storage device 24.
  • the robot 20 may be movable. In this embodiment, the robot 20 may be a small robot.
  • the robot 20 is not limited to the appearance shown in FIG. 1, and may have any appearance. Further, the robot 20 may be used for any purpose, whether it is for home use or industrial use. Further, the robot 20 may have any size.
  • the robot 20 may include an arm 32 and a moving mechanism 36.
  • the robot 20 may further include other members and mechanisms as well as the arm 32 and the moving mechanism 36.
  • the arm 32 may have one or more arms (links) and one or more joints (movable parts). Each of the one or more joints may connect the arm to the arm, eg, rotatably or slidably. Each of the one or more joints may include a motor to change the positional relationship between the arms.
  • the arm 32 may change to an arbitrary posture by the movement of one or more joints.
  • the arm 32 may have an arm base 40, an upper arm 42, and a front arm 44.
  • the arm base 40 may be provided on the moving mechanism 36.
  • One end of the upper arm 42 may be connected to the arm base 40 and the other end may be connected to the front arm 44.
  • An end effector 38 may be attached to a predetermined portion of the arm 32.
  • the end effector 38 is attached to the tip of the arm 32, which is the end opposite to the moving mechanism 36.
  • the arm 32 may be removable with the end effector 38 attached to it. Therefore, the arm 32 can switch the type of end effector 38 to be attached.
  • the end effector 38 may be attached to the tip of the front arm 44 opposite to the upper arm 42.
  • the end effector 38 is, for example, a device that performs a predetermined mechanical operation. Further, the end effector 38 may be a detection device that images the surroundings, collects sound, detects gas components, measures temperature, and the like. Further, the end effector 38 may be an information output device that displays an image or outputs a sound. Further, the end effector 38 may be an information input device that accepts operations by a user or the like.
  • the end effector 38 is a gripping mechanism.
  • the gripping mechanism can grab the target object.
  • the arm 32 to which the end effector 38, which is a gripping mechanism, is attached can grab and move the target object.
  • the end effector 38 may be a brush.
  • the brush can polish the target object.
  • the end effector 38 may be any mechanism and device.
  • the moving mechanism 36 may support the arm base 40.
  • the moving mechanism 36 may have wheels, legs, or the like, or may move on the floor. As a result, the moving mechanism 36 can move the arm 32 to an arbitrary position.
  • the robot 20 may be provided with a processing circuit for controlling the entire robot 20 inside the arm 32 or the moving mechanism 36.
  • the processing circuit may be a computer that executes information processing and control processing.
  • the processing circuit may execute a computer program or control the operation of the robot 20.
  • the processing circuit may be provided in a remote location of the robot 20 and may control the robot 20 via a network, or the internal circuit of the robot 20 and the external device of the robot 20 cooperate with each other by communication. It may be a circuit that controls 20.
  • the information processing device 22 may be a computer that executes information processing and control processing.
  • the information processing device 22 may execute a computer program or may communicate with the robot 20.
  • the information processing device 22 operates in cooperation with the processing circuit of the robot 20 to provide information to the user and accept operations by the user.
  • a part or all of the information processing device 22 may be integrally incorporated in the robot 20.
  • the information processing device 22 may be provided at a remote location of the robot 20 and communicate with the processing circuit of the robot 20 via a network.
  • the storage device 24 may store the end effector 38 that is not attached to the robot 20.
  • the storage device 24 is installed within the movable range of the robot 20.
  • FIG. 2 is a diagram showing a second example of the appearance of the robot system 10 according to the embodiment.
  • the robot 20 can store the end effector 38 attached to the arm 32 in the storage device 24 and automatically remove it. Further, when a predetermined instruction or event occurs, the robot 20 can bring the tip of the arm 32 close to the end effector 38 housed in the storage device 24 and automatically attach the end effector 38 to the arm 32. The user can also manually remove the end effector 38 from the arm 32 and manually attach the end effector 38 to the arm 32. In this way, the robot 20 can manually or automatically replace the end effector 38.
  • Such a robot 20 can move freely on the floor or the like. Further, the robot 20 can move to an arbitrary position, deform the arm 32, and move the end effector 38 in the vicinity of the target object. Then, the robot 20 can operate the end effector 38 in a state where the end effector 38 is moved to the vicinity of the target object. For example, the robot 20 can perform a predetermined operation on the target object, take an image or collect sound, and present information in a state where the end effector 38 is moved in the vicinity of the target object. .. In this way, the robot 20 can move to a designated position with the designated end effector 38 attached, and execute a task using the end effector 38 at the designated position.
  • the robot 20 executes the first task with the first end effector 38 attached, then removes the first end effector 38, then attaches the second end effector 38, and then attaches the second end effector 38.
  • the second task may be executed with the second end effector 38 attached.
  • the robot 20 can also switch the plurality of end effectors 38 to execute the task.
  • the storage device 24 may be integrally provided with the robot 20. That is, the robot 20 may be equipped with the storage device 24. In this case, the robot 20 can operate the end effector 38 while holding the unused end effector 38. Then, in this case, the robot 20 can replace the end effector 38 at the moving destination. Therefore, when the storage device 24 is installed, the robot 20 can execute the task of switching the plurality of end effectors 38 with a small amount of movement.
  • FIG. 3 is a diagram showing an example of the functional configuration of the robot 20.
  • the arm 32 may have an arm-side connector 51 at its tip.
  • the front arm 44 has an arm-side connector 51 at its tip.
  • the end effector 38 may have an effector side connector 52 at a connection portion with the arm 32.
  • the arm-side connector 51 and the effector-side connector 52 may electrically connect the arm 32 and the end effector 38.
  • the robot 20 can supply power to the end effector 38 from the arm 32 side, and can exchange information between the arm 32 and the end effector 38.
  • the moving mechanism 36 may have one or more moving motors 54 and a moving drive circuit 55.
  • Each of the one or a plurality of moving motors 54 may operate wheels, legs, or the like provided on the moving mechanism 36.
  • the mobile drive circuit 55 may drive one or more mobile motors 54.
  • the arm base 40 may have one or more arm base motors 56 and an arm base drive circuit 57. Each of the one or more arm base motors 56 may operate the joints provided on the arm base 40.
  • the arm base drive circuit 57 may drive one or more arm base motors 56.
  • the upper arm 42 may have one or more upper arm motors 58 and an upper arm drive circuit 59. Each of the one or more upper arm motors 58 may operate the joints provided on the upper arm 42.
  • the upper arm drive circuit 59 may drive one or more upper arm motors 58.
  • the front arm 44 may have one or more front arm motors 60 and a front arm drive circuit 61. Each of the one or more front arm motors 60 may operate the joints provided on the front arm 44.
  • the front arm drive circuit 61 may drive one or more front arm motors 60.
  • the front arm 44 may further have a detachable mechanism 62 and a detachable control circuit 63.
  • the attachment / detachment mechanism 62 is a mechanism for attaching / detaching the end effector 38 to / from the arm 32.
  • the attachment / detachment control circuit 63 may control the operation of the attachment / detachment mechanism 62.
  • the end effector 38 may have one or more effector motors 66, an effector drive circuit 67, an effector control circuit 68, and an effector memory 69.
  • Each of the one or a plurality of effector motors 66 may operate a mechanism (for example, a gripping mechanism or a brush) included in the end effector 38.
  • the end effector 38 may have another electrically controllable mechanism (eg, an air ejection device) instead of the effector motor 66.
  • the effector drive circuit 67 may drive one or more effector motors 66.
  • the effector control circuit 68 may include a processor or the like and execute information processing and control processing.
  • the effector control circuit 68 may control the effector drive circuit 67.
  • the effector memory 69 is, for example, a non-volatile memory, and stores identification information assigned to the end effector 38.
  • the identification information is a number that identifies the type of end effector 38. Further, the identification information may be a number uniquely assigned to each end effector 38.
  • the arm base 40 may further include a communication circuit 71 and a robot control circuit 72.
  • the communication circuit 71 and the robot control circuit 72 may be provided on the moving mechanism 36, the upper arm 42, or the front arm 44.
  • the communication circuit 71 may perform wireless communication with the information processing device 22.
  • the communication circuit 71 may perform wired communication with the information processing device 22, for example, when the information processing device 22 is incorporated in the robot 20.
  • the robot control circuit 72 may include a processor, a volatile memory, a non-volatile memory, and the like, and may execute information processing and control processing.
  • the robot control circuit 72 controls the movement drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, and the front arm drive circuit 61, and controls the arm base 40, the movement mechanism 36, and the arm 32 (upper arm 42 and front arm). 44) may be operated. Further, the robot control circuit 72 may control the attachment / detachment control circuit 63 to operate the attachment / detachment mechanism 62.
  • the robot control circuit 72 may have a power supply circuit.
  • the power supply circuit may generate a power supply voltage that stabilizes the power output from the battery provided in the robot 20.
  • the power supply circuit may be connected to an external power source via a power cable or the like to generate a power supply voltage in which the power output from the external power source is stabilized.
  • the robot control circuit 72 may supply the power supply voltage to the mobile drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, the front arm drive circuit 61, the detachable control circuit 63, and the communication circuit 71.
  • the robot control circuit 72 can operate the arm base 40, the moving mechanism 36, the arm 32 (upper arm 42 and front arm 44), the attachment / detachment mechanism 62, and the communication circuit 71 by the electric power output from the battery.
  • the robot control circuit 72 may supply the power supply voltage supplied to the power line to the effector drive circuit 67 via the arm-side connector 51 and the effector-side connector 52. As a result, the robot control circuit 72 can operate the end effector 38 by the electric power output from the battery provided in the robot 20.
  • the robot control circuit 72 may be connected to the mobile drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, the front arm drive circuit 61, and the detachable control circuit 63 by the first bus 73-1.
  • the first bus 73-1 is, for example, a serial bus such as EtherCAT (Ethernet (registered trademark) for Control Automation Technology), CAN (Controller Area Network), or USB (Universal Serial Bus).
  • EtherCAT Ethernet (registered trademark) for Control Automation Technology)
  • CAN Controller Area Network
  • USB Universal Serial Bus
  • the robot control circuit 72 may be connected to the information processing device 22 by the second bus 73-2 via the communication circuit 71.
  • the second bus 73-2 is, for example, a serial bus such as EtherCAT, CAN or USB.
  • the robot control circuit 72 can display predetermined information on the information processing device 22 or acquire the information input to the information processing device 22 via the second bus 73-2. Therefore, the second bus 73-2 functions as a communication line for transmitting and receiving information between the robot control circuit 72 and the end effector 38 in a state where the end effector 38 is attached to the arm 32.
  • the first bus 73-1 and the second bus 73-2 may be the same type of bus or different types of buses.
  • the effector control circuit 68 may be connected to the robot control circuit 72 by the second bus 73-2 via the communication circuit 71.
  • the effector control circuit 68 receives a command from the robot control circuit 72, which is a host device, via the second bus 73-2, and can control the operation of the end effector 38 according to the received command.
  • the effector control circuit 68 can operate the end effector 38 as a peripheral device of the robot control circuit 72 that functions as a host device.
  • the effector control circuit 68 may read out the identification information stored in the effector memory 69. Then, the effector control circuit 68 may transmit the read identification information to the robot control circuit 72, which is a host device, by the second bus 73-2. As a result, the effector control circuit 68 can inform the robot control circuit 72 of the identification information for identifying the type and the like of the end effector 38.
  • FIG. 4 is a diagram showing an example of the appearance of the tip of the arm 32.
  • the tip of the arm 32 (in this embodiment, the tip of the front arm 44) may be formed with a connecting surface 74 to which the end effector 38 is attached.
  • the connecting surface 74 has, for example, a flat surface and is circular.
  • the surface of the connecting surface 74 is not limited to being flat and may not be circular.
  • the arm 32 may have a shaft portion 75, a first regulation pin 76, a second regulation pin 77, and an arm-side connector 51.
  • the shaft portion 75, the first regulation pin 76, the second regulation pin 77, and the arm-side connector 51 may be provided on the connecting surface 74.
  • the shaft portion 75 is substantially columnar and may project vertically from the connecting surface 74.
  • the shaft portion 75 is provided at the center of the circular connecting surface 74.
  • Each of the first regulation pin 76 and the second regulation pin 77 may be a columnar shape having a tapered tip, or may project vertically from the connecting surface 74.
  • the first regulation pin 76 and the second regulation pin 77 have different diameters.
  • the first regulation pin 76 has a longer diameter than the second regulation pin 77.
  • the arm-side connector 51 may include a plurality of first terminals 78.
  • Each of the plurality of first terminals 78 is made of metal or the like and can carry an electric signal.
  • Each of the plurality of first terminals 78 may be exposed to the connecting surface 74.
  • the plurality of first terminals 78 include a terminal for passing a signal of the second bus 73-2, a power supply voltage terminal, a ground terminal, and the like.
  • FIG. 5 is a diagram showing an example of the appearance of the mounting surface 79 of the end effector 38.
  • the end effector 38 may have a mounting surface 79 formed at a connecting portion with the arm 32.
  • the mounting surface 79 may come into contact with the connecting surface 74 when the end effector 38 is mounted on the arm 32.
  • the mounting surface 79 has substantially the same shape as the connecting surface 74, and is, for example, circular.
  • the end effector 38 may have a hole 80, a first regulation hole 81, a second regulation hole 82, and an effector side connector 52.
  • the hole 80, the first regulation hole 81, the second regulation hole 82, and the effector side connector 52 may be provided on the mounting surface 79.
  • the hole 80 is a hole formed in the mounting surface 79.
  • the shaft 75 may be inserted inside when the end effector 38 is attached to the arm 32.
  • the hole 80 may be formed at the center of the circular mounting surface 79.
  • the inner diameter of the hole 80 is substantially the same as the outer diameter of the shaft portion 75, and when the connecting surface 74 and the mounting surface 79 are abutted against each other and come into contact with each other, the portion of the shaft portion 75 exposed from the connecting surface 74 is inside. It may be possible to fit in.
  • the shaft portion 75 may be mechanically fixed inside the hole portion 80 in a state of being inserted into the hole portion 80.
  • the shaft portion 75 can fix the end effector 38 to the arm 32 so that the end effector 38 does not come off from the arm 32 during operation or the like.
  • the shaft portion 75 may be freely inserted and removed from the hole portion 80.
  • Each of the first regulation hole 81 and the second regulation hole 82 may be a hole formed in the mounting surface 79.
  • the first regulation hole 81 is formed at a position corresponding to the first regulation pin 76, and when the end effector 38 is attached to the arm 32, the first regulation pin 76 may be inserted inside.
  • the second regulation hole 82 may be formed at a position corresponding to the second regulation pin 77, and the second regulation pin 77 may be inserted inside when the end effector 38 is attached to the arm 32.
  • the second regulation hole 82 is formed to have an inner diameter such that the second regulation pin 77 can be inserted but the first regulation pin 76 cannot be inserted.
  • the first regulation pin 76, the second regulation pin 77, the first regulation hole 81, and the second regulation hole 82 have the connecting surface 74 and the attachment surface 79 when the end effector 38 is attached to the arm 32.
  • the contacts can be brought into contact with each other in a predetermined positional relationship.
  • the effector side connector 52 includes a plurality of second terminals 83.
  • Each of the plurality of second terminals 83 may be made of metal or the like, and can carry an electric signal.
  • Each of the plurality of second terminals 83 may be exposed on the mounting surface 79.
  • the plurality of second terminals 83 include a terminal for passing a signal of the second bus 73-2, a power supply voltage terminal, a ground terminal, and the like.
  • the plurality of first terminals 78 included in the arm-side connector 51 and the plurality of second terminals 83 included in the effector-side connector 52 may correspond one-to-one.
  • the plurality of first terminals 78 included in the arm-side connector 51 and the plurality of second terminals 83 included in the effector-side connector 52 are electrically connected one-to-one. You may connect. Therefore, when the end effector 38 is attached to the arm 32, the arm-side connector 51 and the effector-side connector 52 exchange the signal of the second bus 73-2 between the communication circuit 71 and the effector control circuit 68. May be possible. Further, when the end effector 38 is attached to the arm 32, the arm-side connector 51 and the effector-side connector 52 may be able to supply a power supply voltage to the end effector 38 from the arm 32 side.
  • FIG. 6 is a diagram showing an example of the appearance of a single unit of the arm-side connector 51.
  • FIG. 7 is a diagram showing an example of the appearance of a single unit of the effector side connector 52.
  • Each of the plurality of first terminals 78 included in the arm-side connector 51 may be in the shape of a pad having a flat surface.
  • Each of the plurality of second terminals 83 included in the effector-side connector 52 has a pin shape protruding from the surface, is movable in the vertical direction, and may be projected in the vertical direction by a spring force.
  • each of the plurality of second terminals 83 contacts the corresponding first terminal 78 of the plurality of first terminals 78. And may be pushed down.
  • the arm-side connector 51 and the effector-side connector 52 ensure that the plurality of first terminals 78 and the plurality of second terminals 83 are electrically connected to each other when the end effector 38 is attached to the arm 32. Can be done.
  • the arm 32 since each of the plurality of second terminals 83 moves in the vertical direction, the deterioration due to the attachment / detachment of the end effector 38 is larger than that of the arm side connector 51. Since the arm 32 is attached by exchanging a plurality of end effectors 38, the number of times of attachment / detachment is larger than the number of times of attachment / detachment of each end effector 38.
  • Such an arm 32 may be provided with an arm-side connector 51 having a pad-shaped terminal that is less likely to deteriorate due to attachment / detachment. As a result, the arm 32 can reduce the number of times of maintenance and the like.
  • FIG. 8 is a diagram showing an example of a cross section of the tip of the shaft portion 75 and the arm 32 in a state where pressure is applied from the outside.
  • FIG. 9 is a diagram showing an example of a cross section of the tip of the shaft portion 75 and the arm 32 in a state where the pressure from the outside is released.
  • the shaft portion 75 may have a cylindrical portion 85, a piston 86, a spring portion 87, and a plurality of hook balls 88.
  • the inside of the cylindrical portion 85 may be hollow. About half (upper side) of the cylindrical portion 85 in the central axis direction may be embedded inside from the connecting surface 74 of the arm 32. As a result, the cylindrical portion 85 may be fixed to the tip of the arm 32. Further, about half (lower side) of the cylindrical portion 85 in the central axis direction may be exposed in the vertical direction from the connecting surface 74 of the arm 32.
  • the piston 86 may be housed in a hollow space inside the cylindrical portion 85.
  • the piston 86 may be movable in the central axis direction.
  • the spring portion 87 may push up the piston 86 by the spring force in the direction from the connecting surface 74 of the arm 32 toward the inside.
  • an injection port 89 may be formed inside the arm 32.
  • the injection port 89 is an opening for applying pressure to the piston 86.
  • the attachment / detachment mechanism 62 may apply pressure from the injection port 89 to the piston 86 inside the cylindrical portion 85 according to the control by the attachment / detachment control circuit 63.
  • a force on the side opposite to the spring force by the spring portion 87 is applied to the piston 86. Therefore, when pressure is applied from the injection port 89, the piston 86 may be pushed down from the connecting surface 74 of the arm 32 in the outward direction as shown in FIG.
  • a plurality of through holes 91 penetrating in a direction orthogonal to the central axis may be formed in a portion exposed to the outside from the connecting surface 74.
  • Each of the plurality of hook balls 88 may be arranged inside any one of the plurality of through holes 91.
  • each of the plurality of through holes 91 may be smaller than the diameter of the hook ball 88. As a result, each of the plurality of through holes 91 can prevent the hook ball 88 arranged inside from protruding to the outside.
  • the piston 86 may have a hollow portion 92 formed on a part of the side surface of the cylindrical portion 85.
  • the hollow portion 92 is a region in which the diameter of a part of the side surface of the cylindrical portion 85 is narrower than the diameter of the space inside the through hole 91.
  • such a shaft portion 75 may have the piston 86 pushed up by a spring force when no pressure is applied from the injection port 89.
  • each of the plurality of hook balls 88 may come into contact with a portion of the side surface of the piston 86 other than the kubomi portion 92 and move in a direction toward the outside of the cylindrical portion 85. Then, in this case, a part of each of the plurality of hook balls 88 may protrude to the outside of the outer surface of the cylindrical portion 85. Therefore, when no pressure is applied from the injection port 89, the shaft portion 75 has the diameter of a part (the portion of the hook ball 88) in the central axial direction in the portion exposed downward from the connecting surface 74 of the arm 32. May be thicker than other parts.
  • such a shaft portion 75 may be pushed down by the piston 86 when pressure is applied from the injection port 89.
  • each of the plurality of hook balls 88 may come into contact with the hollow portion 92 on the side surface of the piston 86 and may be movable in the inward direction of the cylindrical portion 85.
  • each of the plurality of hook spheres 88 may be entirely storable inside the outer surface of the cylindrical portion 85. Therefore, when pressure is applied from the injection port 89, the shaft portion 75 is the diameter of a part (the portion of the hook ball 88) in the central axial direction in the portion exposed downward from the connecting surface 74 of the arm 32. May be approximately the same as the other parts.
  • FIG. 10 is a diagram showing an example of a cross section of a connecting portion between the arm 32 and the end effector 38 when the end effector 38 is attached to and detached from the arm 32.
  • FIG. 11 is a diagram showing an example of a cross section of a connecting portion between the arm 32 and the end effector 38 in a state where the end effector 38 is attached from the arm 32.
  • the attachment / detachment mechanism 62 may apply pressure to the piston 86 from the injection port 89 according to the control by the attachment / detachment control circuit 63.
  • the diameter of a part (the portion of the hook ball 88) in the central axial direction is substantially the same as the other portion. It may be the same. Therefore, in this case, the shaft portion 75 may be inserted and removed from the hole portion 80 of the end effector 38.
  • the hole 80 of the end effector 38 may have an inwardly protruding overhanging portion 93 formed in a part of the inner side surface in the central axis direction.
  • the inner diameter of a part (the part of the overhanging part 93) of the inner surface of the hole 80 in the central axis direction may be shorter than that of the other parts.
  • the portion of the hook ball 88 in the shaft portion 75 may be located below the portion of the overhanging portion 93 in the hole portion 80.
  • the shaft portion 75 is a part (hook) in the central axial direction as shown in FIG.
  • the diameter of the portion of the sphere 88) may be larger than the other portion. Therefore, in this state, even if a force is applied to the end effector 38 in the direction of removal from the arm 32 (upper side), the plurality of hook balls 88 are caught by the overhanging portion 93, and the end effector 38 cannot be removed from the arm 32. ..
  • the shaft portion 75 may be mechanically fixed inside the hole portion 80 in a state of being inserted into the hole portion 80.
  • the arm 32 can fix the end effector 38 and prevent the end effector 38 from coming off during operation or the like.
  • the shaft portion 75 is in a state where it can be inserted and removed from the hole portion 80. As a result, the arm 32 can attach and detach the end effector 38.
  • the connecting surface 74 provided on the arm 32 and the mounting surface 79 provided on the end effector 38 make the end effector 38 attachable to and detachable from the arm 32, and the end effector 38 is attached to the arm 32.
  • the end effector 38 may function as a fixing mechanism for fixing the end effector 38 to the arm 32 while being attached to the arm 32.
  • the mechanism for attaching and detaching the end effector 38 to the arm 32 and for fixing the end effector 38 is not limited to the structure shown in FIGS. 4 to 11, and may have any structure.
  • the end effector 38 and the arm 32 may have a screw hole formed on one side and a bolt provided on the other side.
  • the end effector 38 rotates relative to the arm 32 with the tip of the bolt inserted into the insertion port of the screw hole. As a result, the end effector 38 is screwed into and attached to the arm 32. Further, the end effector 38 is removed by rotating with respect to the arm 32 in the direction opposite to that at the time of attachment.
  • the arm-side connector 51 and the effector-side connector 52 are not limited to the above-mentioned structure and method, and may have any structure and method.
  • the arm-side connector 51 and the effector-side connector 52 may transmit and receive information in a non-contact manner.
  • the arm-side connector 51 and the effector-side connector 52 may transmit and receive information by infrared communication, proximity wireless communication, or the like.
  • the arm-side connector 51 and the effector-side connector 52 may supply electric power from the arm 32 to the end effector 38 by a wireless power feeding method.
  • FIG. 12 is a diagram showing a functional configuration of the robot control circuit 72.
  • the robot control circuit 72 may execute the operating system 110 (OS).
  • the operating system 110 is a program that manages the robot 20 and the information processing device 22.
  • the robot control circuit 72 may be able to execute one or a plurality of types of application programs 112.
  • the application program 112 may be executed under the control of the operating system 110.
  • the application program 112 may be a program for controlling the robot 20.
  • the application program 112 may be created by, for example, a vendor that provides the end effector 38, or may be created by a system integrator or the like different from the vendor.
  • the operating system 110 may abstract the robot 20 and the hardware resources included in the robot 20 and provide them to the application program 112. As a result, the application program 112 can issue an instruction to the abstracted robot 20.
  • the robot control circuit 72 may receive the application program 112 from an external device such as a server that provides the application program 112 via a network, for example, and store the application program 112 in advance. Further, the robot control circuit 72 may acquire the application program 112 from the storage medium and store it in advance. Further, the information processing apparatus 22 may receive or acquire the application program 112 from the server or the storage medium in advance and store it in advance. In this case, the robot control circuit 72 may receive the application program 112 from the information processing device 22.
  • the robot control circuit 72 may execute the robot driver 114.
  • the robot driver 114 may be a program for enabling the robot 20 to be controlled from the operating system 110.
  • the robot driver 114 may be executed as part of the operating system 110.
  • the operating system 110 may control the robot 20 via the robot driver 114.
  • the robot control circuit 72 may execute the effector driver 116 corresponding to each of one or a plurality of types of end effectors 38 that can be attached to the arm 32.
  • the effector driver 116 may be a program for enabling the end effector 38 to be controlled from the operating system 110.
  • the effector driver 116 may be run as part of the operating system 110.
  • the operating system 110 may control the end effector 38 via an effector driver 116 corresponding to the end effector 38 attached to the arm 32.
  • a robot control circuit 72 includes a self-information estimation unit 122, a model management unit 124, a target generation unit 126, an application program interface unit 128, and the like.
  • a route planning unit 130 and a movement control unit 132 may be provided.
  • the self-information estimation unit 122, the model management unit 124, the application program interface unit 128, the route planning unit 130, and the movement control unit 132 may be realized by the robot control circuit 72 executing the operating system 110. Further, the target generation unit 126 may be realized by the robot control circuit 72 executing the application program 112.
  • the self-information estimation unit 122 may estimate information (self-information) related to the end effector 38 such as the self-position and self-posture of the end effector 38.
  • the self-position may represent, for example, the spatial position of the end effector 38.
  • the self-posture may represent, for example, the spatial posture of the end effector 38.
  • the self-information estimation unit 122 may estimate self-information based on, for example, an image obtained by capturing an image of the end effector 38, various sensor information, and the like.
  • the self-information may include a self-position and may not include a self-posture. Further, the self-information may include a self-posture and may not include a self-position. Further, the self-information may be configured to include both self-position and self-posture.
  • the model management unit 124 may manage a robot model that models the robot 20.
  • the robot model may include data used to control the movement of the robot 20.
  • the robot model may include, for example, physical characteristics including the shape, weight, center of gravity position, etc. of each of the plurality of links constituting the robot 20, and motion characteristics relating to one or more joints included in the robot 20. ..
  • the robot model may include weight or mass as long as it is a parameter representing weight.
  • the robot model may include at least data modeling the arm 32. Further, when the movement mechanism 36 is to be moved and controlled, the robot model may include data modeling the arm 32 and the movement mechanism 36.
  • the target generation unit 126 may output target information including the target position, target posture, etc. of the end effector 38.
  • the target position represents, for example, the spatial position of the target end effector 38.
  • the target posture represents, for example, the spatial posture of the target end effector 38.
  • the target information may be configured to include the target position and not the target posture. Further, the target information may have a configuration that includes the target posture and does not include the target position. Further, the target information may be configured to include both the target position and the target posture.
  • the target generation unit 126 may generate target information based on a command from the information processing device 22.
  • the target generation unit 126 may generate target information based on an operation instruction by the user to the information processing device 22.
  • the application program interface unit 128 may acquire information described in a common format from each of one or a plurality of types of application programs 112. In the present embodiment, the application program interface unit 128 may acquire target information described in a common format from the target generation unit 126 realized by each of one or a plurality of types of application programs 112.
  • the route planning unit 130 may acquire target information, self-information, and a robot model when changing the position or posture of the end effector 38. Then, the route planning unit 130 may solve the route planning problem based on the target information, the self-information, and the robot model, and generate the route information indicating the movement route of the arm 32.
  • the movement path of the arm 32 is, for example, a change in the position and posture of the arm 32 for changing the end effector 38 from the self-position and the self-posture included in the self-information to the target position and the target posture included in the target information. May represent the trajectory of.
  • the movement locus of the arm 32 may represent a locus of position and posture for each of the one or more links included in the arm 32.
  • the movement control unit 132 may acquire the target information via the application program interface unit 128. In this case, the movement control unit 132 may acquire self-information from the self-information estimation unit 122. Further, in this case, the movement control unit 132 may acquire the robot model from the model management unit 124.
  • the movement control unit 132 may provide the target information, the self-information, and the robot model to the route planning unit 130, and acquire the target information, the self-information, and the route information based on the robot model from the route planning unit 130. Then, based on the acquired route information, the movement control unit 132, for example, the position and posture of each of the one or a plurality of links included in the arm 32, and the position and posture of the movement mechanism 36 via the robot driver 114. May be controlled.
  • the robot control circuit 72 having such a configuration can change the end effector 38 to the target position and the target posture instructed by the application program 112.
  • the model management unit 124 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the model management unit 124 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
  • the model management unit 124 may specify an end effector model that models the end effector 38 attached to the arm 32 based on the acquired identification information.
  • the end effector model may include at least one of the data representing the weight, center of gravity position and shape of the end effector 38.
  • the model management unit 124 may update the robot model based on the specified end effector model. For example, the model management unit 124 creates a new robot model by incorporating the information represented by the specified end effector model into the robot model that models the robot 20 having the configuration excluding the end effector 38.
  • the end effector model may include, in addition to weight, center of gravity position and shape, other data necessary for the end effector 38 to operate.
  • the corresponding end effector 38 when the corresponding end effector 38 is a mechanism (for example, a gripping mechanism) that operates on an object, information for identifying the object to be operated (for example, data representing the shape of the object). Etc.), and information for identifying an object that is not the operation target may be included.
  • the end effector model may also include a method of mechanical approach to the operating object, a method of controlling the end effector 38 during contact and grip (eg, a method of compliance control), and the like.
  • the end effector model may include information indicating an operation method, operation conditions, and the like of the end effector 38.
  • the end effector model may include various information necessary for controlling the corresponding end effector 38. Then, when the end effector 38 is attached to the arm 32, the model management unit 124 may generate a new robot model incorporating the information represented by such an end effector model.
  • the robot model may be stored in advance in the non-volatile memory in the robot control circuit 72, for example. Instead, the robot model may be stored in advance in another storage device provided in the robot 20 and accessible by the robot control circuit 72.
  • the robot control circuit 72 When the robot control circuit 72 is started, for example, the robot model may be read out from a non-volatile memory or a storage device, expanded into a memory such as a RAM, and a process using the robot model may be executed.
  • the end effector model may be stored in advance in the non-volatile memory in the robot control circuit 72 for each type of the end effector 38, for example.
  • the robot model may be stored in advance for each type of end effector 38 in another storage device provided in the robot 20 and accessible by the robot control circuit 72.
  • the end effector model may be stored in the non-volatile memory provided in the end effector 38.
  • the end effector model may be stored in the information processing device 22 or an external device provided on the network.
  • the robot control circuit 72 may receive the end effector model from the information processing device 22 or an external device via wireless communication and a network and deploy it on a memory such as a RAM.
  • the robot control circuit 72 may access the non-volatile memory or the like in the robot 20 to check whether or not the corresponding end effector model is stored. In this case, the robot control circuit 72 may read the corresponding end effector model from the non-volatile memory in the robot 20 as long as the end effector model corresponding to the non-volatile memory in the robot 20 is stored. When the end effector model corresponding to the non-volatile memory in the robot 20 is not stored, the robot control circuit 72 receives the end effector model from the information processing device 22 or an external device via wireless communication and a network. You may.
  • FIG. 13 is a diagram showing a processing flow of the robot control circuit 72 when the target information is output from the application program 112.
  • the movement control unit 132 of the robot control circuit 72 may execute the process according to the flow shown in FIG.
  • the movement control unit 132 may determine whether or not the target information has been output from the target generation unit 126 realized by the application program 112. When the target information is output (Yes in S11), the movement control unit 132 may proceed to the process in S12.
  • the movement control unit 132 may acquire self-information (self-position and self-posture of the end effector 38) from the self-information estimation unit 122. Subsequently, in S13, the movement control unit 132 may acquire the robot model from the model management unit 124.
  • the movement control unit 132 may provide the target information, the self-information, and the robot model to the route planning unit 130, and cause the route planning unit 130 to generate the route information. Then, the movement control unit 132 may acquire the route information from the route planning unit 130.
  • the movement control unit 132 based on the acquired route information, via the robot driver 114, each position and posture of one or a plurality of links included in the arm 32, and the position and the position of the movement mechanism 36.
  • the posture may be controlled.
  • the robot control circuit 72 that executes such processing can change the end effector 38 to the target position and the target posture instructed by the application program 112.
  • FIG. 14 is a diagram showing a processing flow of the robot control circuit 72 when the end effector 38 is attached to the arm 32.
  • the model management unit 124 of the robot control circuit 72 may execute the process according to the flow shown in FIG.
  • the model management unit 124 may determine whether or not the end effector 38 is attached to the arm 32. When the end effector 38 is attached to the arm 32 (Yes in S21), the model management unit 124 may proceed with the process to S22.
  • the model management unit 124 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the model management unit 124 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
  • the model management unit 124 may specify an end effector model that models the end effector 38 attached to the arm 32 based on the acquired identification information.
  • the model management unit 124 may update the robot model based on the specified end effector model. For example, the model management unit 124 may generate a new robot model by incorporating the information represented by the specified end effector model into a robot model that models the robot 20 having a configuration excluding the end effector 38. ..
  • the robot 20 that executes such processing can update the robot model every time the end effector 38 is attached. Therefore, the robot 20 can generate an accurate robot model that reflects the current configuration. As a result, the robot 20 can stably operate the arm 32 regardless of the type of end effector 38 attached.
  • the robot 20 may manage the robot model with the end effector 38 attached by the operating system 110. As a result, the robot 20 does not have to manage the robot model by the application program 112, so that the processing load on the application program 112 can be reduced. Therefore, the creator of the application program 112 can create the application program 112 without considering the robot model. Therefore, according to the robot control circuit 72, the development burden on the creator of the application program 112 can be reduced.
  • the robot control circuit 72 can refer to the robot model other than when the route information is generated.
  • the robot control circuit 72 refers to a robot model when controlling the operation of the end effector 38.
  • the robot control circuit 72 refers to various information necessary for controlling the end effector 38 included in the robot model.
  • the robot control circuit 72 uses a method of mechanical approach to the operation target included in the updated robot model and a control method during contact and grip (compliance control). The operation of the end effector 38 is controlled with reference to the above method) and the like.
  • the robot control circuit 72 refers to information representing an operation method, an operation condition, and the like included in the updated robot model. , Control the end effector 38.
  • the robot 20 may incorporate an end effector model corresponding to the attached end effector 38 into the robot model each time the end effector 38 is attached.
  • the robot 20 can stably operate each of the end effectors 38 even when the plurality of end effectors 38 are switched to execute the task. Therefore, the robot 20 can stably execute the task using the plurality of end effectors 38.
  • FIG. 15 is a diagram showing a functional configuration of the robot 20 according to the first modification.
  • the arm 32 may further include a force sensor 212 and a transmission circuit 214.
  • the force sensor 212 may detect a force component and a torque component acting on the shaft portion 75 provided at the tip of the arm 32.
  • the force sensor 212 is, for example, a 6-axis force sensor, and may output sensor information representing each of the force and torque acting on the shaft portion 75 as a three-dimensional space vector.
  • the transmission circuit 214 may be connected to the communication circuit 71 via the second bus 73-2.
  • the transmission circuit 214 may transmit the sensor information detected by the force sensor 212 to the robot control circuit 72 via the second bus 73-2.
  • FIG. 16 is a diagram showing a functional configuration of the robot control circuit 72 according to the first modification.
  • the robot control circuit 72 according to the first modification may further include an inertia parameter calculation unit 216.
  • the inertia parameter calculation unit 216 may be realized by the operating system 110.
  • the inertia parameter calculation unit 216 acquires the sensor information detected by the force sensor 212 when the end effector 38 is operated or the arm 32 is moved via the second bus 73-2. You may. Then, the inertia parameter calculation unit 216 may calculate the inertia parameter of the end effector 38 based on the acquired sensor information. The inertial parameter calculation unit 216 may calculate, for example, at least one of the position of the center of gravity of the end effector 38, the weight of the end effector 38, and the moment of inertia of the end effector 38 as inertial parameters.
  • the model management unit 124 may acquire the inertial parameter of the changed end effector 38 from the inertial parameter calculation unit 216. Then, when the inertial parameter of the end effector 38 changes, the model management unit 124 may update the robot model based on the new inertial parameter after the change.
  • FIG. 17 is a diagram showing a processing flow of the robot control circuit 72 when target information is output from the application program 112 in the first modification.
  • the robot control circuit 72 may execute a process in which the processes of S31 to S35 are added to the process shown in FIG.
  • the processing of the robot control circuit 72 according to the first modification will be described as being different from the processing shown in FIG.
  • the movement control unit 132 may determine in S31 whether or not the inertial parameters of the end effector 38 have changed. When the inertial parameter of the end effector 38 does not change (No in S31), the movement control unit 132 may proceed to the process in S32.
  • the movement control unit 132 may determine whether or not the movement of the arm 32 and the movement mechanism 36 has been completed. When the movement is not completed (No in S32), the movement control unit 132 may return the process to S15 and repeat the process. When the movement is completed (Yes in S32), the movement control unit 132 may end this flow.
  • the movement control unit 132 may proceed to the process in S33.
  • the movement control unit 132 acquires self-information from the self-information estimation unit 122. Subsequently, in S34, the movement control unit 132 may acquire the robot model updated according to the change in the inertial parameter of the end effector 38 from the model management unit 124. Then, the movement control unit 132 may proceed with the process to S35.
  • the movement control unit 132 may provide the target information, the self-information, and the updated robot model to the route planning unit 130, and acquire new route information from the route planning unit 130. Then, the movement control unit 132 may return the process to S15 and repeat the process.
  • the robot control circuit 72 according to the first modification as described above updates the robot model when the inertial parameters of the end effector 38 change due to the movement of the arm 32 or the operation of the end effector 38. May be good.
  • the robot control circuit 72 according to the first modification can generate a highly accurate robot model that reflects the latest state of the robot 20. Therefore, according to the robot control circuit 72 according to the first modification, the arm 32 can be stably operated regardless of the state of the end effector 38.
  • FIG. 18 is a diagram showing a functional configuration of the robot control circuit 72 according to the second modification.
  • the robot control circuit 72 according to the second modification may further include a surrounding information generation unit 222.
  • the surrounding information generation unit 222 may be realized by the operating system 110.
  • the surrounding information generation unit 222 may generate information (surrounding information) about one or more existing objects around the robot 20. For example, the surrounding information generation unit 222 may estimate the position and shape of each of one or more objects based on an image of the surroundings of the robot 20 and various sensor information. Then, the surrounding information generation unit 222 may generate surrounding information based on the current position and shape of each of the estimated one or a plurality of objects.
  • the route planning unit 130 may acquire surrounding information in addition to the target information, the self-information, and the robot model. Then, the route planning unit 130 may solve the route planning problem based on the surrounding information, the target information, the self-information, and the robot model, and generate the route information. In this case, the route planning unit 130 may generate route information based on the surrounding information so that the robot 20 does not mechanically interfere with the surrounding objects.
  • FIG. 19 is a diagram showing a processing flow of the robot control circuit 72 when target information is output from the application program 112 in the second modification.
  • the robot control circuit 72 may execute the process shown in FIG.
  • the movement control unit 132 may determine whether or not the target information has been output from the target generation unit 126 realized by the application program 112. When the target information is output (Yes in S41), the movement control unit 132 may proceed to the process in S42.
  • the movement control unit 132 may acquire the surrounding information from the surrounding information generation unit 222. Subsequently, in S43, the movement control unit 132 acquires self-information from the self-information estimation unit 122. Subsequently, in S44, the movement control unit 132 may acquire the robot model from the model management unit 124.
  • the movement control unit 132 provides surrounding information, target information, self-information, and a robot model to the route planning unit 130 so that the robot 20 does not mechanically interfere with surrounding objects in the route planning unit 130.
  • Route information may be generated.
  • the movement control unit 132 may acquire the route information from the route planning unit 130.
  • the movement control unit 132 based on the acquired route information, via the robot driver 114, each position and posture of one or a plurality of links included in the arm 32, and the position and the position of the movement mechanism 36.
  • the posture may be controlled.
  • the movement control unit 132 may acquire the surrounding information from the surrounding information generation unit 222. Subsequently, in S48, the movement control unit 132 may determine whether or not the surrounding information has changed from immediately before. That is, the movement control unit 132 determines whether or not the position or shape of the surrounding object has changed from the immediately preceding state. When the surrounding information does not change (No in S48), the movement control unit 132 may proceed to the process in S49.
  • the movement control unit 132 may determine whether or not the movement of the arm 32 and the movement mechanism 36 has been completed. When the movement is not completed (No in S49), the movement control unit 132 may return the process to S46 and repeat the process. When the movement is completed (Yes in S49), the movement control unit 132 may end this flow.
  • the movement control unit 132 advances the process to S50.
  • the movement control unit 132 may acquire self-information from the self-information estimation unit 122.
  • the movement control unit 132 may provide the surrounding information, the target information, the self-information, and the robot model to the route planning unit 130, and acquire new route information from the route planning unit 130. Then, the movement control unit 132 may return the process to S46 and repeat the process.
  • the robot control circuit 72 according to the second modification as described above may generate route information based on the position and shape of surrounding objects. As a result, the robot control circuit 72 according to the second modification can control the arm 32 and the moving mechanism 36 so as not to mechanically interfere with surrounding objects. Further, the robot control circuit 72 according to the second modification generates new route information again when the position or shape of the surrounding object changes. As a result, the robot control circuit 72 according to the second modification has the arm 32 and the moving mechanism 36 so as not to mechanically interfere with the surrounding objects even when the position or shape of the surrounding objects changes. Can be controlled.
  • FIG. 20 is a diagram showing a functional configuration of the robot control circuit 72 according to the third modification.
  • the robot control circuit 72 according to the third modification may further include an application selection unit 232.
  • the application selection unit 232 may be implemented by the operating system 110.
  • the application selection unit 232 may register in advance the correspondence between each of the plurality of types of end effectors 38 that can be attached to the arm 32 and the corresponding application program 112. When the end effector 38 is attached to the arm 32, the application selection unit 232 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the application selection unit 232 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
  • the application selection unit 232 may select the application program 112 corresponding to the attached end effector 38 based on the acquired identification information, based on the correspondence relationship registered in advance. Then, the application selection unit 232 may start the selected application program 112 via the application program interface unit 128.
  • the application selection unit 232 may display information identifying the selected application program 112 on the monitor of the information processing device 22 instead of invoking the selected application program 112. As a result, the application selection unit 232 can present the user with an appropriate application program 112 for controlling the end effector 38. Further, the application selection unit 232 may present the user by displaying one or more application programs 112 corresponding to the attached end effector 38 on the monitor of the information processing device 22, for example. Then, the application selection unit 232 may select the application program 112 to be used for the arm 32 and the end effector 38 based on the user's designation for the information processing device 22.
  • the application selection unit 232 may access the server, which is an external device, via the network and download the selected application program 112. Further, the application selection unit 232 is the information processing device 22 when the selected application program 112 is not installed in the robot control circuit 72 and the application program 112 is already stored in the information processing device 22. May be regarded as an external device and the application program 112 may be received. If the selected application program 112 is not installed in the robot control circuit 72, the application selection unit 232 accesses the server site for sale and displays a page on the information processing device 22 where the selected application program 112 can be purchased. It may be displayed on the monitor. Then, the application selection unit 232 may download the application program 112 from the server site for sale when the purchase operation is performed by the user.
  • the robot control circuit 72 according to the third modification as described above can select the application program 112 corresponding to the attached end effector 38.
  • the robot control circuit 72 according to the third modification can control the end effector 38 by an appropriate application program 112.
  • the application selection unit 232 may authenticate the acquired identification information.
  • the application selection unit 232 may, for example, access a server or the like via a network to authenticate whether or not the acquired identification information is correct, or cause the user to input an authentication code via the information processing device 22 to end the process. You may authenticate whether or not you have the authority to use the effector 38. Then, when the authentication is successful, the application selection unit 232 may select an appropriate application program 112 based on the correspondence relationship registered in advance. Further, the application selection unit 232 may output the authentication result to the user. For example, if the authentication of the identification information fails, it may be determined that the end effector 38 without authority is attached, and the warning information may be output to the user.
  • the robot 20 according to the fourth modification may include a camera that captures an image of a surrounding subject.
  • the robot control circuit 72 controls this camera.
  • the end effector 38 may have a two-dimensional code representing information including identification information printed on the outer surface.
  • the robot control circuit 72 controls the camera, images the two-dimensional code printed on the end effector 38, and acquires the identification information included in the two-dimensional code.
  • the robot control circuit 72 according to the fourth modification can acquire the identification information from the two-dimensional code printed on the end effector 38 instead of reading the identification information from the effector memory 69.
  • the robot control circuit 72 controls the camera to image the entire appearance or a specific part of the appearance of the end effector 38 to determine the identification information of the end effector 38. You may. Further, the robot control circuit 72 may generate identification information of the end effector 38 by synthesizing the information read from the effector memory 69 and the information acquired from the image captured by the camera. The robot 20 according to the fourth modification can acquire the identification information of the end effector 38 based on the two-dimensional code or the appearance structure of the end effector 38.
  • the robot 20 according to the fifth modification may have the entire arm 32 attached to and detached from the base portion.
  • the base portion is, for example, the moving mechanism 36.
  • the robot 20 according to the fifth modification updates the robot model based on the corresponding arm model.
  • the robot 20 can update the robot model by handling the arm model in the same manner as the end effector model described in the embodiment.
  • each device (robot control circuit 72) in the above-described embodiment may be composed of hardware, or software executed by a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like. It may be composed of information processing of (program).
  • software that realizes at least a part of the functions of each device in the above-described embodiment is a flexible disk, CD-ROM (Compact Disc-Read Only Memory), or USB (Universal).
  • Serial Bus Software information processing may be executed by storing it in a non-temporary storage medium (non-temporary computer-readable medium) such as a memory and reading it into a computer.
  • the software may be downloaded via a communication network.
  • information processing may be executed by hardware by mounting the software on a circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
  • the type of storage medium that stores the software is not limited.
  • the storage medium is not limited to a removable one such as a magnetic disk or an optical disk, and may be a fixed storage medium such as a hard disk or a memory. Further, the storage medium may be provided inside the computer or may be provided outside the computer.
  • FIG. 21 is a block diagram showing an example of the hardware configuration of each device (robot control circuit 72) in the above-described embodiment.
  • each device includes a processor 311 (processing circuit), a main storage device 312 (memory), an auxiliary storage device 313 (memory), a network interface 314, and a device interface 315, which are bus 316. It may be realized as a computer 310 connected via.
  • the computer 310 in FIG. 21 includes one component for each component, but may include a plurality of the same components. Further, although one computer 310 is shown in FIG. 21, software is installed on a plurality of computers, and each of the plurality of computers executes the same or different part of the software. May be good. In this case, it may be a form of distributed computing in which each computer communicates via a network interface 314 or the like to execute processing. That is, each device (robot control circuit 72) in the above-described embodiment is configured as a system that realizes a function by executing instructions stored in one or a plurality of storage devices by one or a plurality of computers. May be good. Further, the information transmitted from the terminal may be processed by one or a plurality of computers provided on the cloud, and the processing result may be transmitted to the terminal.
  • each device (robot control circuit 72) in the above-described embodiment may be executed in parallel processing by using one or a plurality of processors or by using a plurality of computers via a network. Further, various operations may be distributed to a plurality of arithmetic cores in the processor and executed in parallel processing. In addition, some or all of the processes, means, etc. of the present disclosure may be executed by at least one of a processor and a storage device provided on the cloud capable of communicating with the computer 310 via a network. As described above, each device in the above-described embodiment may be in the form of parallel computing by one or a plurality of computers.
  • the processor 311 may be an electronic circuit (processing circuit, Processing circuit, Processing circuitry, CPU, GPU, FPGA, ASIC, etc.) including a computer control device and an arithmetic unit. Further, the processor 311 may be a semiconductor device or the like including a dedicated processing circuit. The processor 311 is not limited to an electronic circuit using an electronic logic element, and may be realized by an optical circuit using an optical logic element. Further, the processor 311 may include an arithmetic function based on quantum computing.
  • the processor 311 can perform arithmetic processing based on the data and software (program) input from each device or the like of the internal configuration of the computer 310, and output the arithmetic result or the control signal to each device or the like.
  • Each device (robot control circuit 72) in the above-described embodiment may be realized by one or a plurality of processors 311.
  • the processor 311 may refer to one or more electronic circuits arranged on one chip, or may refer to one or more electronic circuits arranged on two or more chips or two or more devices. You may point. When a plurality of electronic circuits are used, each electronic circuit may communicate by wire or wirelessly.
  • the main storage device 312 is a storage device that stores instructions executed by the processor 311 and various data and the like, and the information stored in the main storage device 312 is read out by the processor 311.
  • the auxiliary storage device 313 is a storage device other than the main storage device 312. Note that these storage devices mean arbitrary electronic components capable of storing electronic information, and may be semiconductor memories.
  • the semiconductor memory may be either a volatile memory or a non-volatile memory.
  • the storage device for storing various data in each device (robot control circuit 72) in the above-described embodiment may be realized by the main storage device 312 or the auxiliary storage device 313, and may be realized by the built-in memory built in the processor 311. It may be realized.
  • processors may be connected (combined) to one storage device (memory), or a single processor may be connected.
  • a plurality of storage devices (memory) may be connected (combined) to one processor.
  • each device (robot control circuit 72) in the above-described embodiment is composed of at least one storage device (memory) and a plurality of processors connected (combined) to the at least one storage device (memory)
  • a configuration in which at least one of the processors of the above is connected (combined) to at least one storage device (memory) may be included.
  • this configuration may be realized by a storage device (memory) and a processor included in a plurality of computers.
  • a configuration in which the storage device (memory) is integrated with the processor for example, a cache memory including an L1 cache and an L2 cache
  • the network interface 314 is an interface for connecting to a communication network wirelessly or by wire.
  • an appropriate interface such as one conforming to an existing communication standard may be used.
  • Information may be exchanged with the external device 321 connected via the communication network by the network interface 314.
  • the communication network may be any one of WAN (Wide Area Network), LAN (Local Area Network), PAN (Personal Area Network), or a combination thereof, and is between the computer 310 and the external device 321. It suffices as long as information is exchanged in.
  • WAN Wide Area Network
  • LAN Local Area Network
  • PAN Personal Area Network
  • An example of WAN is the Internet
  • an example of LAN is IEEE802.11, Ethernet (registered trademark), etc.
  • PAN is Bluetooth (registered trademark), NFC (Near Field Communication), etc.
  • the device interface 315 is an interface such as USB that directly connects to the external device 322.
  • the external device 321 is a device connected to the computer 310 via a network.
  • the external device 322 is a device that is directly connected to the computer 310.
  • the external device 321 or the external device 322 may be an input device as an example.
  • the input device is, for example, a device such as a camera, a microphone, a motion capture, various sensors, a keyboard, a mouse, or a touch panel, and gives the acquired information to the computer 310. Further, it may be a device including an input unit, a memory and a processor such as a personal computer, a tablet terminal, or a smartphone.
  • the external device 321 or the external device 321 may be an output device as an example.
  • the output device may be, for example, a display device such as an LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), a PDP (Plasma Display Panel), or an organic EL (Electro Luminescence) panel, and outputs audio or the like. It may be a speaker or the like. Further, it may be a device including an output unit such as a personal computer, a tablet terminal, or a smartphone, a memory, and a processor.
  • the external device 321 and the external device 322 may be a storage device (memory).
  • the external device 321 may be a network storage or the like, and the external device 322 may be a storage such as an HDD.
  • the external device 321 or the external device 322 may be a device having some functions of the components of each device (robot control circuit 72) in the above-described embodiment. That is, the computer 310 may transmit or receive a part or all of the processing result of the external device 321 or the external device 322.
  • the expression (including similar expressions) of "at least one (one) of a, b and c" or "at least one (one) of a, b or c" is used. When used, it includes any of a, b, c, ab, ac, bc, or abc. It may also include multiple instances of any element, such as a-a, a-b-b, a-a-b-b-c-c, and the like. It also includes adding elements other than the listed elements (a, b and c), such as having d, such as a-b-c-d.
  • connection / coupling when the terms “connected” and “coupled” are used, direct connection / coupling and indirect connection / coupling are used. , Electrically (electrically) connection / coupling, communication (communicatively) connection / coupling, functionally (operatively) connection / coupling, physical connection / coupling, etc. Intended as a term.
  • the term should be interpreted as appropriate according to the context in which the term is used, but any connection / combination form that is not intentionally or naturally excluded is not limited to being included in the term. Should be interpreted as
  • the physical structure of the element A can execute the operation B. Including that the element A has a configuration and the permanent or temporary setting (setting / configuration) of the element A is set (configured / set) to actually execute the operation B. Good.
  • the element A is a general-purpose processor
  • the processor has a hardware configuration capable of executing the operation B, and the operation B is set by setting a permanent or temporary program (instruction). It suffices if it is configured to actually execute.
  • the element A is a dedicated processor, a dedicated arithmetic circuit, or the like, the circuit structure of the processor actually executes the operation B regardless of whether or not the control instruction and data are actually attached. It only needs to be implemented.
  • finding a global optimal value finding an approximation of a global optimal value, finding a local optimal value, and local optimization It should be interpreted as appropriate according to the context in which the term was used, including finding an approximation of the value. It also includes probabilistically or heuristically finding approximate values of these optimal values.
  • the respective hardware when a plurality of hardware performs a predetermined process, the respective hardware may cooperate to perform the predetermined process, or some hardware may perform the predetermined process. You may do all of the above. Further, some hardware may perform a part of a predetermined process, and another hardware may perform the rest of the predetermined process.
  • the hardware that performs the first process and the hardware that performs the second process when expressions such as "one or more hardware performs the first process and the one or more hardware performs the second process" are used. , The hardware that performs the first process and the hardware that performs the second process may be the same or different. That is, the hardware that performs the first process and the hardware that performs the second process may be included in the one or more hardware.
  • the hardware may include an electronic circuit, a device including the electronic circuit, or the like.
  • each storage device (memory) among the plurality of storage devices (memory) stores only a part of the data. It may be stored or the entire data may be stored.

Abstract

This robot comprises at least one processor and an arm to which an end effector can be attached. At least one processor, if the end effector is attached to the arm, is configured so as to: acquire identifying information from the end effector; on the basis of the identifying information, specify an end effector model in which the end effector is modeled; on the basis of the end effector model, update a robot model which is used to control at least the arm; and, on the basis of the updated robot model, control the arm.

Description

ロボット、制御方法およびプログラムRobots, control methods and programs
 本開示の実施形態は、ロボット、制御方法およびプログラムに関する。 The embodiments of the present disclosure relate to robots, control methods and programs.
 先端にエンドエフェクタが設けられたアームを備えるロボットが知られている。このようなロボットは、複数種類のエンドエフェクタを取り付けることができる。ユーザは、用途に応じて適切なエンドエフェクタを選択して、アームに取り付ける。これにより、ロボットは、多様な作業を行うことができる。 A robot equipped with an arm equipped with an end effector at the tip is known. Such a robot can be equipped with a plurality of types of end effectors. The user selects an appropriate end effector according to the application and attaches it to the arm. This allows the robot to perform a variety of tasks.
 例えば、家庭用等のロボットを提供した場合、ベンダーが様々な種類のエンドエフェクタを提供することが考えられる。しかし、ベンダーが提供するエンドエフェクタだけではロボットにタスクを達成させることができず、エンドエフェクタを含むロボットを制御するためのアプリケーションプログラムが必要になる。このため、ユーザは、システムインテグレータに依頼するなどし、ベンダーから提供された様々な形状、重さ、機能のエンドエフェクタを取り付けた状態で、ロボット全体を安定して動作させることができるようなアプリケーションプログラムを作成しなければならなかった。 For example, when providing a robot for home use, it is conceivable that the vendor will provide various types of end effectors. However, the end effector provided by the vendor alone cannot cause the robot to accomplish the task, and an application program for controlling the robot including the end effector is required. For this reason, the user can request the system integrator to operate the entire robot in a stable manner with the end effectors of various shapes, weights, and functions provided by the vendor attached. I had to write a program.
 さらに、ユーザまたはシステムインテグレータがロボットの全体を理解して、エンドエフェクタごとにアプリケーションプログラムを開発することは、非常に負担が大きく、時間がかかり、コストが高くなる要因となっていた。このため、複数種類のエンドエフェクタを取り付けることが可能なアームを備えるロボットにおいて、エンドエフェクタを切り替えながら、エンドエフェクタとロボットを安定して動作させ、タスクを達成させることは困難であった。 Furthermore, it was extremely burdensome, time-consuming, and costly for the user or system integrator to understand the entire robot and develop an application program for each end effector. For this reason, in a robot provided with an arm capable of attaching a plurality of types of end effectors, it has been difficult to stably operate the end effector and the robot while switching the end effectors to accomplish the task.
特開2007-193736号公報JP-A-2007-193736
 本開示が解決しようとする課題は、エンドエフェクタを取り付け可能なロボットが、エンドエフェクタを安定して動作させることにある。 The problem to be solved by the present disclosure is that a robot to which an end effector can be attached operates the end effector in a stable manner.
 本開示の実施形態に係るロボットは、エンドエフェクタを取り付け可能なアームと、少なくとも1つのプロセッサと、を備える。前記少なくとも1つのプロセッサは、エンドエフェクタが前記アームに取り付けられた場合、前記エンドエフェクタから識別情報を取得することと、前記識別情報に基づき、前記エンドエフェクタをモデル化したエンドエフェクタモデルを特定することと、前記エンドエフェクタモデルに基づき、少なくとも前記アームの制御に用いられるロボットモデルを更新することと、前記更新されたロボットモデルに基づき、前記アームを制御することと、を実行するよう構成される。 The robot according to the embodiment of the present disclosure includes an arm to which an end effector can be attached and at least one processor. When the end effector is attached to the arm, the at least one processor acquires identification information from the end effector and identifies an end effector model that models the end effector based on the identification information. And, based on the end effector model, at least the robot model used for controlling the arm is updated, and the arm is controlled based on the updated robot model.
図1は、実施形態に係るロボットシステムの外観の第1例を示す図である。FIG. 1 is a diagram showing a first example of the appearance of the robot system according to the embodiment. 図2は、実施形態に係るロボットシステムの外観の第2例を示す図である。FIG. 2 is a diagram showing a second example of the appearance of the robot system according to the embodiment. 図3は、ロボットの機能構成の一例を示す図である。FIG. 3 is a diagram showing an example of the functional configuration of the robot. 図4は、アームの先端の外観の一例を示す図である。FIG. 4 is a diagram showing an example of the appearance of the tip of the arm. 図5は、エンドエフェクタの取付面の外観の一例を示す図である。FIG. 5 is a diagram showing an example of the appearance of the mounting surface of the end effector. 図6は、アーム側コネクタの外観の一例を示す図である。FIG. 6 is a diagram showing an example of the appearance of the arm-side connector. 図7は、エフェクタ側コネクタの外観の一例を示す図である。FIG. 7 is a diagram showing an example of the appearance of the effector side connector. 図8は、外部から圧力を加えた状態の軸部およびアームの先端の断面の一例を示す図である。FIG. 8 is a diagram showing an example of a cross section of the shaft portion and the tip of the arm in a state where pressure is applied from the outside. 図9は、外部からの圧力を開放した状態の軸部およびアームの先端の断面の一例を示す図である。FIG. 9 is a diagram showing an example of a cross section of a shaft portion and an arm tip in a state where pressure from the outside is released. 図10は、エンドエフェクタをアームに対して着脱する場合における、アームおよびエンドエフェクタの接続部分の断面の一例を示す図である。FIG. 10 is a diagram showing an example of a cross section of a connecting portion between the arm and the end effector when the end effector is attached to and detached from the arm. 図11は、アームからエンドエフェクタが取り付けられた状態のアームおよびエンドエフェクタの接続部分の断面の一例を示す図である。FIG. 11 is a diagram showing an example of a cross section of a connection portion between the arm and the end effector in a state where the end effector is attached from the arm. 図12は、情報処理装置の機能構成を示す図である。FIG. 12 is a diagram showing a functional configuration of the information processing device. 図13は、アプリケーションプログラムから目標情報が出力された場合の情報処理装置の処理フローを示す図である。FIG. 13 is a diagram showing a processing flow of the information processing apparatus when the target information is output from the application program. 図14は、アームにエンドエフェクタが取り付けられた場合の情報処理装置の処理フローを示す図である。FIG. 14 is a diagram showing a processing flow of the information processing apparatus when an end effector is attached to the arm. 図15は、第1変形例に係るロボットの機能構成を示す図である。FIG. 15 is a diagram showing a functional configuration of the robot according to the first modification. 図16は、第1変形例に係る情報処理装置の機能構成を示す図である。FIG. 16 is a diagram showing a functional configuration of the information processing apparatus according to the first modification. 図17は、第1変形例におけるアプリケーションプログラムから目標情報が出力された場合の情報処理装置の処理フローを示す図である。FIG. 17 is a diagram showing a processing flow of the information processing apparatus when target information is output from the application program in the first modification. 図18は、第2変形例に係る情報処理装置の機能構成を示す図である。FIG. 18 is a diagram showing a functional configuration of the information processing apparatus according to the second modification. 図19は、第2変形例におけるアプリケーションプログラムから目標情報が出力された場合の情報処理装置の処理フローを示す図である。FIG. 19 is a diagram showing a processing flow of the information processing apparatus when target information is output from the application program in the second modification. 図20は、第3変形例に係る情報処理装置の機能構成を示す図である。FIG. 20 is a diagram showing a functional configuration of the information processing apparatus according to the third modification. 図21は、情報処理装置のハードウェア構成の一例を示す図である。FIG. 21 is a diagram showing an example of the hardware configuration of the information processing device.
 以下、図面を参照しながら実施形態について詳細に説明する。 Hereinafter, the embodiment will be described in detail with reference to the drawings.
 図1は、実施形態に係るロボットシステム10の外観の第1例を示す図である。ロボットシステム10は、ロボット20と、情報処理装置22と、収納装置24とを備えてもよい。 FIG. 1 is a diagram showing a first example of the appearance of the robot system 10 according to the embodiment. The robot system 10 may include a robot 20, an information processing device 22, and a storage device 24.
 ロボット20は、移動自在でもよい。本実施形態において、ロボット20は、小型ロボットでもよい。ロボット20は、図1に示すような外観に限らず、どのような外観であってもよい。また、ロボット20は、家庭用であっても、産業用であっても、どのような用途で用いられてもよい。また、ロボット20は、どのような大きさであってもよい。 The robot 20 may be movable. In this embodiment, the robot 20 may be a small robot. The robot 20 is not limited to the appearance shown in FIG. 1, and may have any appearance. Further, the robot 20 may be used for any purpose, whether it is for home use or industrial use. Further, the robot 20 may have any size.
 ロボット20は、アーム32と、移動機構36とを備えてもよい。なお、ロボット20は、アーム32および移動機構36のみならず、他の部材および機構をさらに備えてもよい。 The robot 20 may include an arm 32 and a moving mechanism 36. The robot 20 may further include other members and mechanisms as well as the arm 32 and the moving mechanism 36.
 アーム32は、1または複数の腕部(リンク)と、1または複数の関節部(可動部)とを有してもよい。1または複数の関節部のそれぞれは、腕部と腕部とを、例えば回転可能またはスライド可能に接続してもよい。1または複数の関節部のそれぞれは、モータを含み、腕部と腕部との位置関係を変化させてもよい。アーム32は、1または複数の関節部が動作することにより任意の姿勢に変化してもよい。 The arm 32 may have one or more arms (links) and one or more joints (movable parts). Each of the one or more joints may connect the arm to the arm, eg, rotatably or slidably. Each of the one or more joints may include a motor to change the positional relationship between the arms. The arm 32 may change to an arbitrary posture by the movement of one or more joints.
 本実施形態においては、アーム32は、アームベース40と、上アーム42と、前アーム44とを有してもよい。アームベース40は、移動機構36の上に設けられてもよい。上アーム42は、一方の端部がアームベース40に接続され、他方の端部が前アーム44に接続されてもよい。 In the present embodiment, the arm 32 may have an arm base 40, an upper arm 42, and a front arm 44. The arm base 40 may be provided on the moving mechanism 36. One end of the upper arm 42 may be connected to the arm base 40 and the other end may be connected to the front arm 44.
 アーム32は、所定部分にエンドエフェクタ38が取り付けられてもよい。例えば、アーム32は、移動機構36とは反対側の端部である先端に、エンドエフェクタ38が取り付けられる。 An end effector 38 may be attached to a predetermined portion of the arm 32. For example, the end effector 38 is attached to the tip of the arm 32, which is the end opposite to the moving mechanism 36.
 アーム32は、エンドエフェクタ38を取り付けおよび取り外し可能であってもよい。従って、アーム32は、取り付けるエンドエフェクタ38の種類を切り替えることができる。本実施形態においては、エンドエフェクタ38は、前アーム44の上アーム42とは反対側の先端に取り付けられてもよい。 The arm 32 may be removable with the end effector 38 attached to it. Therefore, the arm 32 can switch the type of end effector 38 to be attached. In the present embodiment, the end effector 38 may be attached to the tip of the front arm 44 opposite to the upper arm 42.
 エンドエフェクタ38は、例えば、機械的な所定の操作を行う装置である。また、エンドエフェクタ38は、周囲を撮像したり、集音したり、気体の成分を検知したり、温度等を測定したりする検出装置であってもよい。また、エンドエフェクタ38は、画像を表示したり、音を出力したりする情報出力装置であってもよい。また、エンドエフェクタ38は、ユーザ等による操作を受け付ける情報入力装置であってもよい。 The end effector 38 is, for example, a device that performs a predetermined mechanical operation. Further, the end effector 38 may be a detection device that images the surroundings, collects sound, detects gas components, measures temperature, and the like. Further, the end effector 38 may be an information output device that displays an image or outputs a sound. Further, the end effector 38 may be an information input device that accepts operations by a user or the like.
 例えば、エンドエフェクタ38は、把持機構である。把持機構は、対象物体をつかむことができる。把持機構であるエンドエフェクタ38が取り付けられたアーム32は、対象物体をつかんで、移動させることができる。また、エンドエフェクタ38は、ブラシであってもよい。ブラシは、対象物体を磨くことができる。なお、エンドエフェクタ38は、どのような機構および装置であってもよい。 For example, the end effector 38 is a gripping mechanism. The gripping mechanism can grab the target object. The arm 32 to which the end effector 38, which is a gripping mechanism, is attached can grab and move the target object. Further, the end effector 38 may be a brush. The brush can polish the target object. The end effector 38 may be any mechanism and device.
 移動機構36は、アームベース40を支持してもよい。移動機構36は、車輪または脚部等を有してもよく、床を移動してもよい。これにより、移動機構36は、アーム32を任意の位置に移動させることができる。 The moving mechanism 36 may support the arm base 40. The moving mechanism 36 may have wheels, legs, or the like, or may move on the floor. As a result, the moving mechanism 36 can move the arm 32 to an arbitrary position.
 また、ロボット20は、アーム32または移動機構36の内部に、ロボット20の全体を制御するための処理回路を備えてもよい。処理回路は、情報処理および制御処理を実行するコンピュータでもよい。処理回路は、コンピュータプログラムを実行してもよく、ロボット20の動作を制御してもよい。なお、処理回路は、ロボット20の遠隔地に設けられ、ネットワークを介してロボット20を制御してもよいし、ロボット20の内部の回路とロボット20の外部の装置とが通信により連携してロボット20を制御する回路であってもよい。 Further, the robot 20 may be provided with a processing circuit for controlling the entire robot 20 inside the arm 32 or the moving mechanism 36. The processing circuit may be a computer that executes information processing and control processing. The processing circuit may execute a computer program or control the operation of the robot 20. The processing circuit may be provided in a remote location of the robot 20 and may control the robot 20 via a network, or the internal circuit of the robot 20 and the external device of the robot 20 cooperate with each other by communication. It may be a circuit that controls 20.
 情報処理装置22は、情報処理および制御処理を実行するコンピュータでもよい。情報処理装置22は、コンピュータプログラムを実行してもよく、ロボット20と通信してもよい。情報処理装置22は、ロボット20の処理回路と協働して動作して、ユーザに情報を提供したり、ユーザによる操作を受け付けたりする。なお、情報処理装置22は、その一部又は全部がロボット20に一体的に組み込まれてもよい。また、情報処理装置22は、ロボット20の遠隔地に設けられ、ネットワークを介してロボット20の処理回路と通信をしてもよい。 The information processing device 22 may be a computer that executes information processing and control processing. The information processing device 22 may execute a computer program or may communicate with the robot 20. The information processing device 22 operates in cooperation with the processing circuit of the robot 20 to provide information to the user and accept operations by the user. A part or all of the information processing device 22 may be integrally incorporated in the robot 20. Further, the information processing device 22 may be provided at a remote location of the robot 20 and communicate with the processing circuit of the robot 20 via a network.
 収納装置24は、ロボット20に取り付けられていないエンドエフェクタ38を収納してもよい。例えば、収納装置24は、ロボット20の移動可能な範囲内に設置される。 The storage device 24 may store the end effector 38 that is not attached to the robot 20. For example, the storage device 24 is installed within the movable range of the robot 20.
 図2は、実施形態に係るロボットシステム10の外観の第2例を示す図である。 FIG. 2 is a diagram showing a second example of the appearance of the robot system 10 according to the embodiment.
 ロボット20は、所定の指示またはイベントが発生した場合、アーム32に取り付けられているエンドエフェクタ38を収納装置24に収めて、自動で取り外すことができる。また、ロボット20は、所定の指示またはイベントが発生した場合、収納装置24に収納されているエンドエフェクタ38にアーム32の先端を近づけて、アーム32にエンドエフェクタ38を自動で取り付けることができる。また、ユーザは、手動でエンドエフェクタ38をアーム32から取り外したり、手動でエンドエフェクタ38をアーム32に取り付けたりすることもできる。このようにロボット20は、手動または自動でエンドエフェクタ38を交換することができる。 When a predetermined instruction or event occurs, the robot 20 can store the end effector 38 attached to the arm 32 in the storage device 24 and automatically remove it. Further, when a predetermined instruction or event occurs, the robot 20 can bring the tip of the arm 32 close to the end effector 38 housed in the storage device 24 and automatically attach the end effector 38 to the arm 32. The user can also manually remove the end effector 38 from the arm 32 and manually attach the end effector 38 to the arm 32. In this way, the robot 20 can manually or automatically replace the end effector 38.
 このようなロボット20は、床等の上を自在に移動することができる。さらに、ロボット20は、任意の位置に移動して、アーム32を変形させてエンドエフェクタ38を対象物体の近傍に移動させることができる。そして、ロボット20は、エンドエフェクタ38を対象物体の近傍に移動させた状態において、エンドエフェクタ38を動作させることができる。例えば、ロボット20は、エンドエフェクタ38を対象物体の近傍に移動させた状態で、対象物体に対して所定の操作をしたり、撮像または集音をしたり、情報を提示したりすることができる。このように、ロボット20は、指定されたエンドエフェクタ38を取り付けた状態で指定された位置に移動し、指定された位置においてエンドエフェクタ38を用いたタスクを実行することができる。 Such a robot 20 can move freely on the floor or the like. Further, the robot 20 can move to an arbitrary position, deform the arm 32, and move the end effector 38 in the vicinity of the target object. Then, the robot 20 can operate the end effector 38 in a state where the end effector 38 is moved to the vicinity of the target object. For example, the robot 20 can perform a predetermined operation on the target object, take an image or collect sound, and present information in a state where the end effector 38 is moved in the vicinity of the target object. .. In this way, the robot 20 can move to a designated position with the designated end effector 38 attached, and execute a task using the end effector 38 at the designated position.
 また、ロボット20は、1番目のエンドエフェクタ38を取り付けた状態で第1タスクを実行し、続いて、1番目のエンドエフェクタ38を取り外し、続いて、2番目のエンドエフェクタ38を取り付け、続いて、2番目のエンドエフェクタ38を取り付けた状態で第2タスクを実行してもよい。これにより、ロボット20は、複数のエンドエフェクタ38を切り替えてタスクを実行することもできる。 Further, the robot 20 executes the first task with the first end effector 38 attached, then removes the first end effector 38, then attaches the second end effector 38, and then attaches the second end effector 38. The second task may be executed with the second end effector 38 attached. As a result, the robot 20 can also switch the plurality of end effectors 38 to execute the task.
 また、収納装置24は、ロボット20に一体的に設けられていてもよい。すなわち、ロボット20は、収納装置24を搭載してもよい。この場合、ロボット20は、使用していないエンドエフェクタ38を保持しながら、エンドエフェクタ38を動作させることができる。そして、この場合、ロボット20は、移動先で、エンドエフェクタ38を交換することができる。従って、収納装置24を搭載している場合、ロボット20は、複数のエンドエフェクタ38を切り替えるタスクを、少ない移動量で実行することができる。 Further, the storage device 24 may be integrally provided with the robot 20. That is, the robot 20 may be equipped with the storage device 24. In this case, the robot 20 can operate the end effector 38 while holding the unused end effector 38. Then, in this case, the robot 20 can replace the end effector 38 at the moving destination. Therefore, when the storage device 24 is installed, the robot 20 can execute the task of switching the plurality of end effectors 38 with a small amount of movement.
 図3は、ロボット20の機能構成の一例を示す図である。 FIG. 3 is a diagram showing an example of the functional configuration of the robot 20.
 アーム32は、先端にアーム側コネクタ51を有してもよい。本実施形態においては、前アーム44は、先端にアーム側コネクタ51を有する。また、エンドエフェクタ38は、アーム32との接続部分にエフェクタ側コネクタ52を有してもよい。 The arm 32 may have an arm-side connector 51 at its tip. In the present embodiment, the front arm 44 has an arm-side connector 51 at its tip. Further, the end effector 38 may have an effector side connector 52 at a connection portion with the arm 32.
 アーム側コネクタ51およびエフェクタ側コネクタ52は、エンドエフェクタ38がアーム32に取り付けられた場合、アーム32とエンドエフェクタ38とを、電気的に接続してもよい。これにより、ロボット20は、アーム32側からエンドエフェクタ38へ電源を供給することができるとともに、アーム32とエンドエフェクタ38との間で情報をやり取りすることができる。 When the end effector 38 is attached to the arm 32, the arm-side connector 51 and the effector-side connector 52 may electrically connect the arm 32 and the end effector 38. As a result, the robot 20 can supply power to the end effector 38 from the arm 32 side, and can exchange information between the arm 32 and the end effector 38.
 移動機構36は、1または複数の移動モータ54と、移動駆動回路55とを有してもよい。1または複数の移動モータ54のそれぞれは、移動機構36に設けられた車輪または脚部等を動作させてもよい。移動駆動回路55は、1または複数の移動モータ54を駆動してもよい。 The moving mechanism 36 may have one or more moving motors 54 and a moving drive circuit 55. Each of the one or a plurality of moving motors 54 may operate wheels, legs, or the like provided on the moving mechanism 36. The mobile drive circuit 55 may drive one or more mobile motors 54.
 アームベース40は、1または複数のアームベースモータ56と、アームベース駆動回路57とを有してもよい。1または複数のアームベースモータ56のそれぞれは、アームベース40に設けられた関節部を動作させてもよい。アームベース駆動回路57は、1または複数のアームベースモータ56を駆動してもよい。 The arm base 40 may have one or more arm base motors 56 and an arm base drive circuit 57. Each of the one or more arm base motors 56 may operate the joints provided on the arm base 40. The arm base drive circuit 57 may drive one or more arm base motors 56.
 上アーム42は、1または複数の上アームモータ58と、上アーム駆動回路59とを有してもよい。1または複数の上アームモータ58のそれぞれは、上アーム42に設けられた関節部を動作させてもよい。上アーム駆動回路59は、1または複数の上アームモータ58を駆動してもよい。 The upper arm 42 may have one or more upper arm motors 58 and an upper arm drive circuit 59. Each of the one or more upper arm motors 58 may operate the joints provided on the upper arm 42. The upper arm drive circuit 59 may drive one or more upper arm motors 58.
 前アーム44は、1または複数の前アームモータ60と、前アーム駆動回路61とを有してもよい。1または複数の前アームモータ60のそれぞれは、前アーム44に設けられた関節部を動作させてもよい。前アーム駆動回路61は、1または複数の前アームモータ60を駆動してもよい。 The front arm 44 may have one or more front arm motors 60 and a front arm drive circuit 61. Each of the one or more front arm motors 60 may operate the joints provided on the front arm 44. The front arm drive circuit 61 may drive one or more front arm motors 60.
 前アーム44は、さらに、着脱機構62と、着脱制御回路63とを有してもよい。着脱機構62は、エンドエフェクタ38をアーム32に取り付けおよび取り外しをする機構である。着脱制御回路63は、着脱機構62の動作を制御してもよい。 The front arm 44 may further have a detachable mechanism 62 and a detachable control circuit 63. The attachment / detachment mechanism 62 is a mechanism for attaching / detaching the end effector 38 to / from the arm 32. The attachment / detachment control circuit 63 may control the operation of the attachment / detachment mechanism 62.
 エンドエフェクタ38は、1または複数のエフェクタモータ66と、エフェクタ駆動回路67と、エフェクタ制御回路68と、エフェクタメモリ69とを有してもよい。 The end effector 38 may have one or more effector motors 66, an effector drive circuit 67, an effector control circuit 68, and an effector memory 69.
 1または複数のエフェクタモータ66のそれぞれは、エンドエフェクタ38が有する機構(例えば、把持機構またはブラシ等)を動作させてもよい。エンドエフェクタ38は、エフェクタモータ66に代えて、電気的に制御可能な他の機構(例えば、エアーの噴出装置)を有してもよい。 Each of the one or a plurality of effector motors 66 may operate a mechanism (for example, a gripping mechanism or a brush) included in the end effector 38. The end effector 38 may have another electrically controllable mechanism (eg, an air ejection device) instead of the effector motor 66.
 エフェクタ駆動回路67は、1または複数のエフェクタモータ66を駆動してもよい。エフェクタ制御回路68は、プロセッサ等を含み、情報処理および制御処理を実行してもよい。エフェクタ制御回路68は、エフェクタ駆動回路67を制御してもよい。エフェクタメモリ69は、例えば不揮発メモリであり、エンドエフェクタ38に割り当てられた識別情報を記憶する。識別情報は、エンドエフェクタ38の種類を識別する番号である。また、識別情報は、エンドエフェクタ38毎に固有に割り当てられた番号であってもよい。 The effector drive circuit 67 may drive one or more effector motors 66. The effector control circuit 68 may include a processor or the like and execute information processing and control processing. The effector control circuit 68 may control the effector drive circuit 67. The effector memory 69 is, for example, a non-volatile memory, and stores identification information assigned to the end effector 38. The identification information is a number that identifies the type of end effector 38. Further, the identification information may be a number uniquely assigned to each end effector 38.
 アームベース40は、さらに、通信回路71と、ロボット制御回路72とを有してもよい。なお、通信回路71およびロボット制御回路72は、移動機構36、上アーム42または前アーム44に設けられていてもよい。 The arm base 40 may further include a communication circuit 71 and a robot control circuit 72. The communication circuit 71 and the robot control circuit 72 may be provided on the moving mechanism 36, the upper arm 42, or the front arm 44.
 通信回路71は、情報処理装置22と無線通信をしてもよい。通信回路71は、例えば情報処理装置22がロボット20に組み込まれている場合等においては、情報処理装置22と有線通信をしてもよい。 The communication circuit 71 may perform wireless communication with the information processing device 22. The communication circuit 71 may perform wired communication with the information processing device 22, for example, when the information processing device 22 is incorporated in the robot 20.
 ロボット制御回路72は、プロセッサ、揮発メモリおよび不揮発メモリ等を含んでもよく、情報処理および制御処理を実行してもよい。ロボット制御回路72は、移動駆動回路55、アームベース駆動回路57、上アーム駆動回路59および前アーム駆動回路61を制御して、アームベース40、移動機構36およびアーム32(上アーム42および前アーム44)を動作させてもよい。また、ロボット制御回路72は、着脱制御回路63を制御して、着脱機構62を動作させてもよい。 The robot control circuit 72 may include a processor, a volatile memory, a non-volatile memory, and the like, and may execute information processing and control processing. The robot control circuit 72 controls the movement drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, and the front arm drive circuit 61, and controls the arm base 40, the movement mechanism 36, and the arm 32 (upper arm 42 and front arm). 44) may be operated. Further, the robot control circuit 72 may control the attachment / detachment control circuit 63 to operate the attachment / detachment mechanism 62.
 ここで、ロボット制御回路72は、電源回路を有してもよい。電源回路は、ロボット20内に設けられたバッテリから出力される電力を安定化させた電源電圧を発生させてもよい。なお、電源回路は、電源ケーブル等を介して外部電力源と接続し、外部電力源から出力される電力を安定化した電源電圧を発生してもよい。ロボット制御回路72は、電源電圧を移動駆動回路55、アームベース駆動回路57、上アーム駆動回路59、前アーム駆動回路61、着脱制御回路63および通信回路71に供給してもよい。これにより、ロボット制御回路72は、アームベース40、移動機構36、アーム32(上アーム42および前アーム44)、着脱機構62および通信回路71をバッテリから出力される電力により動作させることができる。 Here, the robot control circuit 72 may have a power supply circuit. The power supply circuit may generate a power supply voltage that stabilizes the power output from the battery provided in the robot 20. The power supply circuit may be connected to an external power source via a power cable or the like to generate a power supply voltage in which the power output from the external power source is stabilized. The robot control circuit 72 may supply the power supply voltage to the mobile drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, the front arm drive circuit 61, the detachable control circuit 63, and the communication circuit 71. As a result, the robot control circuit 72 can operate the arm base 40, the moving mechanism 36, the arm 32 (upper arm 42 and front arm 44), the attachment / detachment mechanism 62, and the communication circuit 71 by the electric power output from the battery.
 さらに、前記エンドエフェクタが取り付けられた状態において、前記エンドエフェクタへ電力を供給するための電力線を有してもよい。ロボット制御回路72は、電力線に供給される電源電圧を、アーム側コネクタ51およびエフェクタ側コネクタ52を介してエフェクタ駆動回路67に供給してもよい。これにより、ロボット制御回路72は、エンドエフェクタ38をロボット20内に設けられたバッテリから出力される電力により動作させることができる。 Further, it may have a power line for supplying electric power to the end effector in a state where the end effector is attached. The robot control circuit 72 may supply the power supply voltage supplied to the power line to the effector drive circuit 67 via the arm-side connector 51 and the effector-side connector 52. As a result, the robot control circuit 72 can operate the end effector 38 by the electric power output from the battery provided in the robot 20.
 また、ロボット制御回路72は、第1バス73-1により、移動駆動回路55、アームベース駆動回路57、上アーム駆動回路59、前アーム駆動回路61および着脱制御回路63に接続されてもよい。第1バス73-1は、例えば、EtherCAT(Ethernet(登録商標) for Control Automation Technology)、CAN(Controller Area Network)またはUSB(Universal Serial Bus)等のシリアルバスである。これにより、ロボット制御回路72は、移動駆動回路55、アームベース駆動回路57、上アーム駆動回路59、前アーム駆動回路61および着脱制御回路63に対して命令を発行できるとともに、これらから発生したイベント等を受け取ることができる。 Further, the robot control circuit 72 may be connected to the mobile drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, the front arm drive circuit 61, and the detachable control circuit 63 by the first bus 73-1. The first bus 73-1 is, for example, a serial bus such as EtherCAT (Ethernet (registered trademark) for Control Automation Technology), CAN (Controller Area Network), or USB (Universal Serial Bus). As a result, the robot control circuit 72 can issue commands to the mobile drive circuit 55, the arm base drive circuit 57, the upper arm drive circuit 59, the front arm drive circuit 61, and the detachable control circuit 63, and the events generated from these can be issued. Etc. can be received.
 また、ロボット制御回路72は、通信回路71を介して、第2バス73-2により情報処理装置22と接続されてもよい。第2バス73-2は、例えば、EtherCAT、CANまたはUSB等のシリアルバスである。ロボット制御回路72は、第2バス73-2を介して、情報処理装置22に所定の情報を表示させたり、情報処理装置22に入力された情報を取得したりすることができる。従って、第2バス73-2は、アーム32にエンドエフェクタ38が取り付けられた状態において、ロボット制御回路72とエンドエフェクタ38との間で情報を送受信するための通信線として機能する。なお、第1バス73-1と第2バス73-2とは、同一種類のバスであってもよいし、異なる種類のバスであってもよい。 Further, the robot control circuit 72 may be connected to the information processing device 22 by the second bus 73-2 via the communication circuit 71. The second bus 73-2 is, for example, a serial bus such as EtherCAT, CAN or USB. The robot control circuit 72 can display predetermined information on the information processing device 22 or acquire the information input to the information processing device 22 via the second bus 73-2. Therefore, the second bus 73-2 functions as a communication line for transmitting and receiving information between the robot control circuit 72 and the end effector 38 in a state where the end effector 38 is attached to the arm 32. The first bus 73-1 and the second bus 73-2 may be the same type of bus or different types of buses.
 エフェクタ制御回路68は、アーム側コネクタ51とエフェクタ側コネクタ52とが接続された場合、通信回路71を介して、第2バス73-2によりロボット制御回路72と接続されてもよい。エフェクタ制御回路68は、ホスト機器であるロボット制御回路72から第2バス73-2を介して命令を受け付け、受け付けた命令に応じてエンドエフェクタ38の動作を制御することができる。これにより、エフェクタ制御回路68は、ホスト機器として機能するロボット制御回路72の周辺機器として、エンドエフェクタ38を動作させることができる。 When the arm-side connector 51 and the effector-side connector 52 are connected, the effector control circuit 68 may be connected to the robot control circuit 72 by the second bus 73-2 via the communication circuit 71. The effector control circuit 68 receives a command from the robot control circuit 72, which is a host device, via the second bus 73-2, and can control the operation of the end effector 38 according to the received command. As a result, the effector control circuit 68 can operate the end effector 38 as a peripheral device of the robot control circuit 72 that functions as a host device.
 また、エフェクタ制御回路68は、エンドエフェクタ38がアーム32に接続された場合、エフェクタメモリ69に記憶されている識別情報を読み出してよい。そして、エフェクタ制御回路68は、読み出した識別情報を第2バス73-2により、ホスト機器であるロボット制御回路72に送信してもよい。これにより、エフェクタ制御回路68は、エンドエフェクタ38の種別等を識別する識別情報をロボット制御回路72に知らせることができる。 Further, when the end effector 38 is connected to the arm 32, the effector control circuit 68 may read out the identification information stored in the effector memory 69. Then, the effector control circuit 68 may transmit the read identification information to the robot control circuit 72, which is a host device, by the second bus 73-2. As a result, the effector control circuit 68 can inform the robot control circuit 72 of the identification information for identifying the type and the like of the end effector 38.
 図4は、アーム32の先端の外観の一例を示す図である。アーム32の先端(本実施形態においては、前アーム44の先端)は、エンドエフェクタ38が取り付けられる連結面74が形成されてもよい。本実施形態において、連結面74は、例えば表面が平坦であって、円形である。ただし、連結面74は、表面が平坦に限らず、円形でなくてもよい。 FIG. 4 is a diagram showing an example of the appearance of the tip of the arm 32. The tip of the arm 32 (in this embodiment, the tip of the front arm 44) may be formed with a connecting surface 74 to which the end effector 38 is attached. In the present embodiment, the connecting surface 74 has, for example, a flat surface and is circular. However, the surface of the connecting surface 74 is not limited to being flat and may not be circular.
 アーム32は、軸部75と、第1規制ピン76と、第2規制ピン77と、アーム側コネクタ51とを有してもよい。軸部75、第1規制ピン76、第2規制ピン77およびアーム側コネクタ51は、連結面74に設けられてもよい。 The arm 32 may have a shaft portion 75, a first regulation pin 76, a second regulation pin 77, and an arm-side connector 51. The shaft portion 75, the first regulation pin 76, the second regulation pin 77, and the arm-side connector 51 may be provided on the connecting surface 74.
 軸部75は、ほぼ円柱状で、連結面74から垂直に突出してもよい。例えば、軸部75は、円形の連結面74における中心に設けられる。 The shaft portion 75 is substantially columnar and may project vertically from the connecting surface 74. For example, the shaft portion 75 is provided at the center of the circular connecting surface 74.
 第1規制ピン76および第2規制ピン77のそれぞれは、先端が細くなった柱状でもよく、連結面74から垂直に突出してもよい。例えば、第1規制ピン76と第2規制ピン77とは、直径が異なる。例えば、第1規制ピン76は、第2規制ピン77よりも直径が長い。 Each of the first regulation pin 76 and the second regulation pin 77 may be a columnar shape having a tapered tip, or may project vertically from the connecting surface 74. For example, the first regulation pin 76 and the second regulation pin 77 have different diameters. For example, the first regulation pin 76 has a longer diameter than the second regulation pin 77.
 アーム側コネクタ51は、複数の第1端子78を含んでもよい。複数の第1端子78のそれぞれは、金属等であり、電気信号を流すことができる。複数の第1端子78のそれぞれは、連結面74に露出してもよい。複数の第1端子78は、第2バス73-2の信号を流す端子、電源電圧端子、および、グランド端子等を含む。 The arm-side connector 51 may include a plurality of first terminals 78. Each of the plurality of first terminals 78 is made of metal or the like and can carry an electric signal. Each of the plurality of first terminals 78 may be exposed to the connecting surface 74. The plurality of first terminals 78 include a terminal for passing a signal of the second bus 73-2, a power supply voltage terminal, a ground terminal, and the like.
 図5は、エンドエフェクタ38の取付面79の外観の一例を示す図である。エンドエフェクタ38は、アーム32との接続部分に、取付面79が形成されてもよい。 FIG. 5 is a diagram showing an example of the appearance of the mounting surface 79 of the end effector 38. The end effector 38 may have a mounting surface 79 formed at a connecting portion with the arm 32.
 取付面79は、エンドエフェクタ38がアーム32に取り付けられた場合に、連結面74と接触してもよい。例えば、取付面79は、連結面74とほぼ同一の形状であり、例えば円形である。 The mounting surface 79 may come into contact with the connecting surface 74 when the end effector 38 is mounted on the arm 32. For example, the mounting surface 79 has substantially the same shape as the connecting surface 74, and is, for example, circular.
 エンドエフェクタ38は、穴部80と、第1規制穴81と、第2規制穴82と、エフェクタ側コネクタ52とを有してもよい。穴部80、第1規制穴81、第2規制穴82およびエフェクタ側コネクタ52は、取付面79に設けられてもよい。 The end effector 38 may have a hole 80, a first regulation hole 81, a second regulation hole 82, and an effector side connector 52. The hole 80, the first regulation hole 81, the second regulation hole 82, and the effector side connector 52 may be provided on the mounting surface 79.
 穴部80は、取付面79に形成された穴である。穴部80は、エンドエフェクタ38がアーム32に取り付けられた場合に、軸部75が内部に挿入されてもよい。例えば、穴部80は、円形の取付面79における中心に形成されてもよい。穴部80は、内径が軸部75の外径とほぼ同一であり、連結面74と取付面79とが突き当てられて接触した場合に、軸部75における連結面74から露出した部分を内部に収めることができてもよい。 The hole 80 is a hole formed in the mounting surface 79. In the hole 80, the shaft 75 may be inserted inside when the end effector 38 is attached to the arm 32. For example, the hole 80 may be formed at the center of the circular mounting surface 79. The inner diameter of the hole 80 is substantially the same as the outer diameter of the shaft portion 75, and when the connecting surface 74 and the mounting surface 79 are abutted against each other and come into contact with each other, the portion of the shaft portion 75 exposed from the connecting surface 74 is inside. It may be possible to fit in.
 そして、エンドエフェクタ38がアーム32に取り付けられた場合に、軸部75は、穴部80に挿入された状態で、穴部80の内部で機械的に固定されてもよい。これにより、軸部75は、エンドエフェクタ38をアーム32に固定して、動作中等においてエンドエフェクタ38がアーム32から外れないようにすることができる。さらに、アーム32に対してエンドエフェクタ38を取り外す場合および取り付けの動作の途中においては、軸部75は、穴部80に対して、挿入および抜出が自在な状態とされてもよい。 Then, when the end effector 38 is attached to the arm 32, the shaft portion 75 may be mechanically fixed inside the hole portion 80 in a state of being inserted into the hole portion 80. As a result, the shaft portion 75 can fix the end effector 38 to the arm 32 so that the end effector 38 does not come off from the arm 32 during operation or the like. Further, when the end effector 38 is removed from the arm 32 and during the mounting operation, the shaft portion 75 may be freely inserted and removed from the hole portion 80.
 第1規制穴81および第2規制穴82のそれぞれは、取付面79に形成された穴であってもよい。第1規制穴81は、第1規制ピン76に対応する位置に形成され、エンドエフェクタ38がアーム32に取り付けられた場合に、第1規制ピン76が内部に挿入されてもよい。第2規制穴82は、第2規制ピン77に対応する位置に形成されてもよく、エンドエフェクタ38がアーム32に取り付けられた場合に、第2規制ピン77が内部に挿入されてもよい。例えば、第2規制穴82は、第2規制ピン77は挿入可能であるが、第1規制ピン76は挿入できない程度の内径に形成される。従って、第1規制ピン76、第2規制ピン77、第1規制穴81および第2規制穴82は、エンドエフェクタ38がアーム32に取り付けられた場合において、連結面74と取付面79とを、予め定められた位置関係で接触させることができる。 Each of the first regulation hole 81 and the second regulation hole 82 may be a hole formed in the mounting surface 79. The first regulation hole 81 is formed at a position corresponding to the first regulation pin 76, and when the end effector 38 is attached to the arm 32, the first regulation pin 76 may be inserted inside. The second regulation hole 82 may be formed at a position corresponding to the second regulation pin 77, and the second regulation pin 77 may be inserted inside when the end effector 38 is attached to the arm 32. For example, the second regulation hole 82 is formed to have an inner diameter such that the second regulation pin 77 can be inserted but the first regulation pin 76 cannot be inserted. Therefore, the first regulation pin 76, the second regulation pin 77, the first regulation hole 81, and the second regulation hole 82 have the connecting surface 74 and the attachment surface 79 when the end effector 38 is attached to the arm 32. The contacts can be brought into contact with each other in a predetermined positional relationship.
 エフェクタ側コネクタ52は、複数の第2端子83を含む。複数の第2端子83のそれぞれは、金属等であってもよく、電気信号を流すことができる。複数の第2端子83のそれぞれは、取付面79に露出してもよい。複数の第2端子83は、第2バス73-2の信号を流す端子、電源電圧端子、および、グランド端子等を含む。 The effector side connector 52 includes a plurality of second terminals 83. Each of the plurality of second terminals 83 may be made of metal or the like, and can carry an electric signal. Each of the plurality of second terminals 83 may be exposed on the mounting surface 79. The plurality of second terminals 83 include a terminal for passing a signal of the second bus 73-2, a power supply voltage terminal, a ground terminal, and the like.
 アーム側コネクタ51に含まれる複数の第1端子78と、エフェクタ側コネクタ52に含まれる複数の第2端子83とは、一対一で対応してもよい。エンドエフェクタ38がアーム32に取り付けられた場合において、アーム側コネクタ51に含まれる複数の第1端子78と、エフェクタ側コネクタ52に含まれる複数の第2端子83とは、一対一で電気的に接続してもよい。従って、エンドエフェクタ38がアーム32に取り付けられた場合において、アーム側コネクタ51およびエフェクタ側コネクタ52は、第2バス73-2の信号を通信回路71とエフェクタ制御回路68との間でやり取りさせることができてもよい。さらに、エンドエフェクタ38がアーム32に取り付けられた場合において、アーム側コネクタ51およびエフェクタ側コネクタ52は、アーム32側からエンドエフェクタ38へ電源電圧を供給することができてもよい。 The plurality of first terminals 78 included in the arm-side connector 51 and the plurality of second terminals 83 included in the effector-side connector 52 may correspond one-to-one. When the end effector 38 is attached to the arm 32, the plurality of first terminals 78 included in the arm-side connector 51 and the plurality of second terminals 83 included in the effector-side connector 52 are electrically connected one-to-one. You may connect. Therefore, when the end effector 38 is attached to the arm 32, the arm-side connector 51 and the effector-side connector 52 exchange the signal of the second bus 73-2 between the communication circuit 71 and the effector control circuit 68. May be possible. Further, when the end effector 38 is attached to the arm 32, the arm-side connector 51 and the effector-side connector 52 may be able to supply a power supply voltage to the end effector 38 from the arm 32 side.
 図6は、アーム側コネクタ51の単体の外観の一例を示す図である。図7は、エフェクタ側コネクタ52の単体の外観の一例を示す図である。 FIG. 6 is a diagram showing an example of the appearance of a single unit of the arm-side connector 51. FIG. 7 is a diagram showing an example of the appearance of a single unit of the effector side connector 52.
 アーム側コネクタ51に含まれる複数の第1端子78のそれぞれは、表面が平坦なパット状でもよい。エフェクタ側コネクタ52に含まれる複数の第2端子83のそれぞれは、表面から突出したピン状であり、垂直方向に移動可能であり、ばね力により垂直方向に突き出てもよい。 Each of the plurality of first terminals 78 included in the arm-side connector 51 may be in the shape of a pad having a flat surface. Each of the plurality of second terminals 83 included in the effector-side connector 52 has a pin shape protruding from the surface, is movable in the vertical direction, and may be projected in the vertical direction by a spring force.
 このようなアーム側コネクタ51およびエフェクタ側コネクタ52は、突き当てて接触された場合に、複数の第2端子83のそれぞれが、複数の第1端子78のうちの対応する第1端子78に接触して押し下げられてもよい。これにより、アーム側コネクタ51およびエフェクタ側コネクタ52は、エンドエフェクタ38がアーム32に取り付けられた場合において、複数の第1端子78と複数の第2端子83とを確実に電気的に接続させることができる。 When such an arm-side connector 51 and an effector-side connector 52 are brought into contact with each other, each of the plurality of second terminals 83 contacts the corresponding first terminal 78 of the plurality of first terminals 78. And may be pushed down. As a result, the arm-side connector 51 and the effector-side connector 52 ensure that the plurality of first terminals 78 and the plurality of second terminals 83 are electrically connected to each other when the end effector 38 is attached to the arm 32. Can be done.
 また、エフェクタ側コネクタ52は、複数の第2端子83のそれぞれが垂直方向に移動するので、エンドエフェクタ38の着脱による劣化がアーム側コネクタ51より大きい。アーム32は、複数のエンドエフェクタ38が交換して取り付けられるので、着脱回数が、個々のエンドエフェクタ38の着脱回数よりも多くなる。このようなアーム32は、着脱による劣化が少ないパット状の端子を有するアーム側コネクタ51が設けられてもよい。これにより、アーム32は、メンテナンス等の回数を少なくすることができる。 Further, in the effector side connector 52, since each of the plurality of second terminals 83 moves in the vertical direction, the deterioration due to the attachment / detachment of the end effector 38 is larger than that of the arm side connector 51. Since the arm 32 is attached by exchanging a plurality of end effectors 38, the number of times of attachment / detachment is larger than the number of times of attachment / detachment of each end effector 38. Such an arm 32 may be provided with an arm-side connector 51 having a pad-shaped terminal that is less likely to deteriorate due to attachment / detachment. As a result, the arm 32 can reduce the number of times of maintenance and the like.
 図8は、外部から圧力を加えた状態の軸部75およびアーム32の先端の断面の一例を示す図である。図9は、外部からの圧力を開放した状態の軸部75およびアーム32の先端の断面の一例を示す図である。 FIG. 8 is a diagram showing an example of a cross section of the tip of the shaft portion 75 and the arm 32 in a state where pressure is applied from the outside. FIG. 9 is a diagram showing an example of a cross section of the tip of the shaft portion 75 and the arm 32 in a state where the pressure from the outside is released.
 軸部75は、円筒部85と、ピストン86と、バネ部87と、複数のフック球88とを有してもよい。 The shaft portion 75 may have a cylindrical portion 85, a piston 86, a spring portion 87, and a plurality of hook balls 88.
 円筒部85は、内部が中空でもよい。円筒部85は、中心軸方向の略半分程度(上側)がアーム32の連結面74から内部に埋め込まれてもよい。これにより、円筒部85は、アーム32の先端に固定されてもよい。また、円筒部85は、中心軸方向の略半分程度(下側)が、アーム32の連結面74から垂直方向に露出してもよい。 The inside of the cylindrical portion 85 may be hollow. About half (upper side) of the cylindrical portion 85 in the central axis direction may be embedded inside from the connecting surface 74 of the arm 32. As a result, the cylindrical portion 85 may be fixed to the tip of the arm 32. Further, about half (lower side) of the cylindrical portion 85 in the central axis direction may be exposed in the vertical direction from the connecting surface 74 of the arm 32.
 ピストン86は、円筒部85の内部の中空の空間に収納されてもよい。ピストン86は、中心軸方向に移動可能とされてもよい。 The piston 86 may be housed in a hollow space inside the cylindrical portion 85. The piston 86 may be movable in the central axis direction.
 バネ部87は、図8に示すように、アーム32の連結面74から内部に向かう方向に、ピストン86を、ばね力により押し上げてもよい。 As shown in FIG. 8, the spring portion 87 may push up the piston 86 by the spring force in the direction from the connecting surface 74 of the arm 32 toward the inside.
 また、アーム32の内部には、注入口89が形成されてもよい。注入口89は、ピストン86に圧力を加えるための開口である。着脱機構62は、着脱制御回路63による制御に応じて、注入口89から円筒部85の内部のピストン86に圧力を加えてもよい。注入口89から圧力が加えられた場合、ピストン86は、バネ部87によるばね力とは反対側の力が加わる。従って、注入口89から圧力を加えた場合、ピストン86は、図9に示すように、アーム32の連結面74から外部に向かう方向に、押し下げられてもよい。 Further, an injection port 89 may be formed inside the arm 32. The injection port 89 is an opening for applying pressure to the piston 86. The attachment / detachment mechanism 62 may apply pressure from the injection port 89 to the piston 86 inside the cylindrical portion 85 according to the control by the attachment / detachment control circuit 63. When pressure is applied from the injection port 89, a force on the side opposite to the spring force by the spring portion 87 is applied to the piston 86. Therefore, when pressure is applied from the injection port 89, the piston 86 may be pushed down from the connecting surface 74 of the arm 32 in the outward direction as shown in FIG.
 また、円筒部85は、連結面74から外部に露出した部分に、中心軸に直交する方向に貫通する複数の貫通孔91が形成されてもよい。複数のフック球88のそれぞれは、複数の貫通孔91の何れかの内部に配置されてもよい。 Further, in the cylindrical portion 85, a plurality of through holes 91 penetrating in a direction orthogonal to the central axis may be formed in a portion exposed to the outside from the connecting surface 74. Each of the plurality of hook balls 88 may be arranged inside any one of the plurality of through holes 91.
 複数の貫通孔91のそれぞれは、外側の開口がフック球88の直径よりも小さくてもよい。これにより、複数の貫通孔91のそれぞれは、内部に配置されたフック球88を、外側に飛び出ないようにすることができる。 The outer opening of each of the plurality of through holes 91 may be smaller than the diameter of the hook ball 88. As a result, each of the plurality of through holes 91 can prevent the hook ball 88 arranged inside from protruding to the outside.
 また、ピストン86は、円筒部85における側面の一部分にクボミ部92が形成されていてもよい。クボミ部92は、円筒部85における側面の一部の直径が、貫通孔91の内部の空間の直径よりも狭くされた領域である。 Further, the piston 86 may have a hollow portion 92 formed on a part of the side surface of the cylindrical portion 85. The hollow portion 92 is a region in which the diameter of a part of the side surface of the cylindrical portion 85 is narrower than the diameter of the space inside the through hole 91.
 このような軸部75は、図8に示すように、注入口89から圧力が加えられていない状態の場合、ピストン86がばね力により押し上げられてもよい。この場合、複数のフック球88のそれぞれは、ピストン86の側面における、クボミ部92以外の部分に接触し、円筒部85の外側に向かう方向に移動してもよい。そして、この場合、複数のフック球88のそれぞれは、一部分が、円筒部85の外側面よりも外側へと出てもよい。従って、軸部75は、注入口89から圧力が加えられていない状態の場合、アーム32の連結面74から下側に露出した部分における、中心軸方向の一部分(フック球88の部分)の直径が他の部分より太くなってもよい。 As shown in FIG. 8, such a shaft portion 75 may have the piston 86 pushed up by a spring force when no pressure is applied from the injection port 89. In this case, each of the plurality of hook balls 88 may come into contact with a portion of the side surface of the piston 86 other than the kubomi portion 92 and move in a direction toward the outside of the cylindrical portion 85. Then, in this case, a part of each of the plurality of hook balls 88 may protrude to the outside of the outer surface of the cylindrical portion 85. Therefore, when no pressure is applied from the injection port 89, the shaft portion 75 has the diameter of a part (the portion of the hook ball 88) in the central axial direction in the portion exposed downward from the connecting surface 74 of the arm 32. May be thicker than other parts.
 また、このような軸部75は、図9に示すように、注入口89から圧力が加えられている状態の場合、ピストン86が押し下げられてもよい。この場合、複数のフック球88のそれぞれは、ピストン86の側面における、クボミ部92に接触し、円筒部85の内側向かう方向に移動可能となってもよい。そして、この場合、複数のフック球88のそれぞれは、円筒部85の外側面よりも内側に、全体が収納可能とされてもよい。従って、軸部75は、注入口89から圧力が加えられている状態の場合、アーム32の連結面74から下側に露出した部分における、中心軸方向の一部分(フック球88の部分)の直径は、他の部分とほぼ同一となってもよい。 Further, as shown in FIG. 9, such a shaft portion 75 may be pushed down by the piston 86 when pressure is applied from the injection port 89. In this case, each of the plurality of hook balls 88 may come into contact with the hollow portion 92 on the side surface of the piston 86 and may be movable in the inward direction of the cylindrical portion 85. Then, in this case, each of the plurality of hook spheres 88 may be entirely storable inside the outer surface of the cylindrical portion 85. Therefore, when pressure is applied from the injection port 89, the shaft portion 75 is the diameter of a part (the portion of the hook ball 88) in the central axial direction in the portion exposed downward from the connecting surface 74 of the arm 32. May be approximately the same as the other parts.
 図10は、エンドエフェクタ38をアーム32に対して着脱する場合における、アーム32およびエンドエフェクタ38の接続部分の断面の一例を示す図である。図11は、アーム32からエンドエフェクタ38が取り付けられた状態のアーム32およびエンドエフェクタ38の接続部分の断面の一例を示す図である。 FIG. 10 is a diagram showing an example of a cross section of a connecting portion between the arm 32 and the end effector 38 when the end effector 38 is attached to and detached from the arm 32. FIG. 11 is a diagram showing an example of a cross section of a connecting portion between the arm 32 and the end effector 38 in a state where the end effector 38 is attached from the arm 32.
 エンドエフェクタ38をアーム32に対して着脱する場合、着脱機構62は、着脱制御回路63による制御に応じて、注入口89からピストン86に圧力を加えてもよい。これにより、軸部75は、図10に示すように、アーム32の連結面74から下側に露出した部分における、中心軸方向の一部分(フック球88の部分)の直径が他の部分とほぼ同一となってもよい。従って、この場合、軸部75は、エンドエフェクタ38の穴部80に挿入および抜出が可能となってもよい。 When attaching / detaching the end effector 38 to / from the arm 32, the attachment / detachment mechanism 62 may apply pressure to the piston 86 from the injection port 89 according to the control by the attachment / detachment control circuit 63. As a result, as shown in FIG. 10, in the portion of the shaft portion 75 exposed downward from the connecting surface 74 of the arm 32, the diameter of a part (the portion of the hook ball 88) in the central axial direction is substantially the same as the other portion. It may be the same. Therefore, in this case, the shaft portion 75 may be inserted and removed from the hole portion 80 of the end effector 38.
 エンドエフェクタ38の穴部80は、内部の側面の中心軸方向における一部分に、内側方向に張り出した張出部93が形成されてもよい。これにより、穴部80は、内側面の中心軸方向における一部分(張出部93の部分)の内径が、他の部分よりも短くなってもよい。 The hole 80 of the end effector 38 may have an inwardly protruding overhanging portion 93 formed in a part of the inner side surface in the central axis direction. As a result, the inner diameter of a part (the part of the overhanging part 93) of the inner surface of the hole 80 in the central axis direction may be shorter than that of the other parts.
 ここで、エンドエフェクタ38がアーム32に取り付けられた場合、軸部75におけるフック球88の部分は、穴部80における張出部93の部分よりも、下側に位置してもよい。 Here, when the end effector 38 is attached to the arm 32, the portion of the hook ball 88 in the shaft portion 75 may be located below the portion of the overhanging portion 93 in the hole portion 80.
 ピストン86に圧力を加えた状態で、エンドエフェクタ38をアーム32に取り付け、その後、ピストン86に加える圧力を開放した場合、軸部75は、図11に示すように、中心軸方向の一部分(フック球88の部分)の直径が他の部分より太くなってもよい。このため、この状態で、アーム32から取り外す方向(上側)にエンドエフェクタ38に力を加えても、複数のフック球88が張出部93に引っかかり、エンドエフェクタ38をアーム32から取り外すことができない。 When the end effector 38 is attached to the arm 32 with the pressure applied to the piston 86 and then the pressure applied to the piston 86 is released, the shaft portion 75 is a part (hook) in the central axial direction as shown in FIG. The diameter of the portion of the sphere 88) may be larger than the other portion. Therefore, in this state, even if a force is applied to the end effector 38 in the direction of removal from the arm 32 (upper side), the plurality of hook balls 88 are caught by the overhanging portion 93, and the end effector 38 cannot be removed from the arm 32. ..
 以上のように、エンドエフェクタ38がアーム32に取り付けられた場合に、軸部75は、穴部80に挿入された状態で、穴部80の内部で機械的に固定されてもよい。これにより、アーム32は、エンドエフェクタ38を固定して、動作中等においてエンドエフェクタ38が外れないようにすることができる。さらに、アーム32に対してエンドエフェクタ38を取り付ける場合および取り外す場合、軸部75は、穴部80に対して挿入および抜出可能な状態となる。これにより、アーム32は、エンドエフェクタ38を取り付けおよび取り外しすることができる。 As described above, when the end effector 38 is attached to the arm 32, the shaft portion 75 may be mechanically fixed inside the hole portion 80 in a state of being inserted into the hole portion 80. As a result, the arm 32 can fix the end effector 38 and prevent the end effector 38 from coming off during operation or the like. Further, when the end effector 38 is attached to or removed from the arm 32, the shaft portion 75 is in a state where it can be inserted and removed from the hole portion 80. As a result, the arm 32 can attach and detach the end effector 38.
 以上のように、アーム32に設けられた連結面74およびエンドエフェクタ38に設けられた取付面79は、エンドエフェクタ38をアーム32に対して取り付けおよび取り外し可能とするとともに、エンドエフェクタ38がアーム32に取り付けられた状態でエンドエフェクタ38をアーム32に固定する固定機構として機能してもよい。なお、アーム32に対してエンドエフェクタ38を取り付けおよび取り外しをするためおよび固定をするための機構は、図4から図11に示すような構造に限らず、どのような構造であってもよい。例えば、エンドエフェクタ38およびアーム32は、一方にねじ穴が形成され、他方にボルトが設けられていてもよい。この場合、エンドエフェクタ38は、ボルトの先端がねじ穴の挿入口に挿入された状態でアーム32に対して相対的に回転する。これにより、エンドエフェクタ38は、アーム32に対してねじ込まれて取り付ける。また、エンドエフェクタ38は、アーム32に対して取り付け時と反対方向に回転して取り外される。 As described above, the connecting surface 74 provided on the arm 32 and the mounting surface 79 provided on the end effector 38 make the end effector 38 attachable to and detachable from the arm 32, and the end effector 38 is attached to the arm 32. The end effector 38 may function as a fixing mechanism for fixing the end effector 38 to the arm 32 while being attached to the arm 32. The mechanism for attaching and detaching the end effector 38 to the arm 32 and for fixing the end effector 38 is not limited to the structure shown in FIGS. 4 to 11, and may have any structure. For example, the end effector 38 and the arm 32 may have a screw hole formed on one side and a bolt provided on the other side. In this case, the end effector 38 rotates relative to the arm 32 with the tip of the bolt inserted into the insertion port of the screw hole. As a result, the end effector 38 is screwed into and attached to the arm 32. Further, the end effector 38 is removed by rotating with respect to the arm 32 in the direction opposite to that at the time of attachment.
 また、アーム側コネクタ51およびエフェクタ側コネクタ52は、上述した構造および方式に限らず、どのような構造および方式であってもよい。例えば、アーム側コネクタ51およびエフェクタ側コネクタ52は、非接触方式で情報を送受信してもよい。例えば、アーム側コネクタ51およびエフェクタ側コネクタ52は、赤外線通信または近接無線通信等により、情報を送受信してもよい。また、アーム側コネクタ51およびエフェクタ側コネクタ52は、ワイヤレス給電方式により、電力をアーム32からエンドエフェクタ38へと供給してもよい。 Further, the arm-side connector 51 and the effector-side connector 52 are not limited to the above-mentioned structure and method, and may have any structure and method. For example, the arm-side connector 51 and the effector-side connector 52 may transmit and receive information in a non-contact manner. For example, the arm-side connector 51 and the effector-side connector 52 may transmit and receive information by infrared communication, proximity wireless communication, or the like. Further, the arm-side connector 51 and the effector-side connector 52 may supply electric power from the arm 32 to the end effector 38 by a wireless power feeding method.
 図12は、ロボット制御回路72の機能構成を示す図である。ロボット制御回路72は、オペレーティングシステム110(OS)を実行してもよい。オペレーティングシステム110は、ロボット20および情報処理装置22を管理するプログラムである。 FIG. 12 is a diagram showing a functional configuration of the robot control circuit 72. The robot control circuit 72 may execute the operating system 110 (OS). The operating system 110 is a program that manages the robot 20 and the information processing device 22.
 また、ロボット制御回路72は、1または複数種類のアプリケーションプログラム112を実行可能であってもよい。アプリケーションプログラム112は、オペレーティングシステム110による管理下で実行されてもよい。 Further, the robot control circuit 72 may be able to execute one or a plurality of types of application programs 112. The application program 112 may be executed under the control of the operating system 110.
 アプリケーションプログラム112は、ロボット20を制御するためのプログラムであってもよい。アプリケーションプログラム112は、例えばエンドエフェクタ38を提供するベンダー等により作成されてもよいし、ベンダーとは異なるシステムインテグレータ等により作成されてもよい。オペレーティングシステム110は、ロボット20およびロボット20が備えるハードウェアリソースを抽象化して、アプリケーションプログラム112に提供してもよい。これにより、アプリケーションプログラム112は、抽象化されたロボット20に対して命令を発行することができる。 The application program 112 may be a program for controlling the robot 20. The application program 112 may be created by, for example, a vendor that provides the end effector 38, or may be created by a system integrator or the like different from the vendor. The operating system 110 may abstract the robot 20 and the hardware resources included in the robot 20 and provide them to the application program 112. As a result, the application program 112 can issue an instruction to the abstracted robot 20.
 ロボット制御回路72は、アプリケーションプログラム112を提供するサーバ等の外部装置から例えばネットワークを介してアプリケーションプログラム112を受信して予め記憶してもよい。また、ロボット制御回路72は、記憶媒体からアプリケーションプログラム112を取得して予め記憶してもよい。また、情報処理装置22がサーバまたは記憶媒体から予めアプリケーションプログラム112を受信または取得して予め記憶していてよい。この場合、ロボット制御回路72は、情報処理装置22からアプリケーションプログラム112を受信してもよい。 The robot control circuit 72 may receive the application program 112 from an external device such as a server that provides the application program 112 via a network, for example, and store the application program 112 in advance. Further, the robot control circuit 72 may acquire the application program 112 from the storage medium and store it in advance. Further, the information processing apparatus 22 may receive or acquire the application program 112 from the server or the storage medium in advance and store it in advance. In this case, the robot control circuit 72 may receive the application program 112 from the information processing device 22.
 また、ロボット制御回路72は、ロボットドライバ114を実行してもよい。ロボットドライバ114は、ロボット20をオペレーティングシステム110から制御可能とするためのプログラムであってもよい。ロボットドライバ114は、オペレーティングシステム110の一部として実行されてもよい。オペレーティングシステム110は、ロボットドライバ114を介して、ロボット20を制御してもよい。 Further, the robot control circuit 72 may execute the robot driver 114. The robot driver 114 may be a program for enabling the robot 20 to be controlled from the operating system 110. The robot driver 114 may be executed as part of the operating system 110. The operating system 110 may control the robot 20 via the robot driver 114.
 また、ロボット制御回路72は、アーム32に取り付け可能な1または複数の種類のエンドエフェクタ38のそれぞれに対応したエフェクタドライバ116を実行してもよい。エフェクタドライバ116は、エンドエフェクタ38をオペレーティングシステム110から制御可能とするためのプログラムであってもよい。エフェクタドライバ116は、オペレーティングシステム110の一部として実行されてもよい。オペレーティングシステム110は、アーム32に取り付けられているエンドエフェクタ38に対応するエフェクタドライバ116を介して、エンドエフェクタ38を制御してもよい。 Further, the robot control circuit 72 may execute the effector driver 116 corresponding to each of one or a plurality of types of end effectors 38 that can be attached to the arm 32. The effector driver 116 may be a program for enabling the end effector 38 to be controlled from the operating system 110. The effector driver 116 may be run as part of the operating system 110. The operating system 110 may control the end effector 38 via an effector driver 116 corresponding to the end effector 38 attached to the arm 32.
 このようなロボット制御回路72は、エンドエフェクタ38が取り付けられたアーム32を制御するために、自己情報推定部122と、モデル管理部124と、目標生成部126と、アプリケーションプログラムインターフェース部128と、経路計画部130と、移動制御部132とを備えてもよい。 In order to control the arm 32 to which the end effector 38 is attached, such a robot control circuit 72 includes a self-information estimation unit 122, a model management unit 124, a target generation unit 126, an application program interface unit 128, and the like. A route planning unit 130 and a movement control unit 132 may be provided.
 自己情報推定部122、モデル管理部124、アプリケーションプログラムインターフェース部128、経路計画部130および移動制御部132は、ロボット制御回路72がオペレーティングシステム110を実行することにより実現されてもよい。また、目標生成部126は、ロボット制御回路72がアプリケーションプログラム112を実行することにより実現されてもよい。 The self-information estimation unit 122, the model management unit 124, the application program interface unit 128, the route planning unit 130, and the movement control unit 132 may be realized by the robot control circuit 72 executing the operating system 110. Further, the target generation unit 126 may be realized by the robot control circuit 72 executing the application program 112.
 自己情報推定部122は、エンドエフェクタ38の自己位置、自己姿勢等のエンドエフェクタ38に関する情報(自己情報)を推定してもよい。自己位置は、例えば、エンドエフェクタ38の空間的な位置を表してもよい。また、自己姿勢は、例えば、エンドエフェクタ38の空間的な姿勢を表してもよい。自己情報推定部122は、例えば、エンドエフェクタ38を撮像した画像、各種のセンサ情報等に基づき、自己情報を推定してもよい。なお、自己情報は、自己位置を含んでおり、自己姿勢を含んでない構成であってもよい。また、自己情報は、自己姿勢を含んでおり、自己位置を含んでない構成であってもよい。また、自己情報は、自己位置および自己姿勢の両方を含む構成であってもよい。 The self-information estimation unit 122 may estimate information (self-information) related to the end effector 38 such as the self-position and self-posture of the end effector 38. The self-position may represent, for example, the spatial position of the end effector 38. Further, the self-posture may represent, for example, the spatial posture of the end effector 38. The self-information estimation unit 122 may estimate self-information based on, for example, an image obtained by capturing an image of the end effector 38, various sensor information, and the like. The self-information may include a self-position and may not include a self-posture. Further, the self-information may include a self-posture and may not include a self-position. Further, the self-information may be configured to include both self-position and self-posture.
 モデル管理部124は、ロボット20をモデル化したロボットモデルを管理してもよい。ロボットモデルは、ロボット20の動作を制御するために用いられるデータを含んでもよい。ロボットモデルは、例えば、ロボット20を構成する複数のリンクのそれぞれの形状、重量、重心位置等を含む物理特性、並びに、ロボット20に含まれる1または複数の関節部に関する動作特性等を含んでもよい。なお、ロボットモデルは、重さを表すパラメータであれば、重量を含んでも、質量を含んでもよい。ロボットモデルは、少なくともアーム32をモデル化したデータを含んでもよい。また、移動機構36を移動制御させる場合には、ロボットモデルは、アーム32および移動機構36をモデル化したデータを含んでもよい。 The model management unit 124 may manage a robot model that models the robot 20. The robot model may include data used to control the movement of the robot 20. The robot model may include, for example, physical characteristics including the shape, weight, center of gravity position, etc. of each of the plurality of links constituting the robot 20, and motion characteristics relating to one or more joints included in the robot 20. .. The robot model may include weight or mass as long as it is a parameter representing weight. The robot model may include at least data modeling the arm 32. Further, when the movement mechanism 36 is to be moved and controlled, the robot model may include data modeling the arm 32 and the movement mechanism 36.
 目標生成部126は、エンドエフェクタ38の位置または姿勢を変更する場合に、エンドエフェクタ38の目標位置、目標姿勢等を含む目標情報を出力してもよい。目標位置は、例えば、目標となるエンドエフェクタ38の空間的な位置を表す。また、目標姿勢は、例えば、目標となるエンドエフェクタ38の空間的な姿勢を表す。なお、目的情報は、目標位置を含んでおり、目標姿勢を含んでない構成であってもよい。また、目的情報は、目標姿勢を含んでおり、目標位置を含んでない構成であってもよい。また、目的情報は、目標位置および目標姿勢の両方を含む構成であってもよい。 When changing the position or posture of the end effector 38, the target generation unit 126 may output target information including the target position, target posture, etc. of the end effector 38. The target position represents, for example, the spatial position of the target end effector 38. Further, the target posture represents, for example, the spatial posture of the target end effector 38. The target information may be configured to include the target position and not the target posture. Further, the target information may have a configuration that includes the target posture and does not include the target position. Further, the target information may be configured to include both the target position and the target posture.
 なお、ロボット20が情報処理装置22と連携して動作している場合、目標生成部126は、情報処理装置22からの指令に基づき目標情報を生成してもよい。例えば、目標生成部126は、情報処理装置22に対するユーザによる操作指示に基づいて、目標情報を生成してもよい。 When the robot 20 is operating in cooperation with the information processing device 22, the target generation unit 126 may generate target information based on a command from the information processing device 22. For example, the target generation unit 126 may generate target information based on an operation instruction by the user to the information processing device 22.
 アプリケーションプログラムインターフェース部128は、1または複数種類のアプリケーションプログラム112のそれぞれから、共通のフォーマットで記述された情報を取得してもよい。本実施形態においては、アプリケーションプログラムインターフェース部128は、1または複数種類のアプリケーションプログラム112のそれぞれにより実現される目標生成部126から、共通のフォーマットで記述された目標情報を取得してもよい。 The application program interface unit 128 may acquire information described in a common format from each of one or a plurality of types of application programs 112. In the present embodiment, the application program interface unit 128 may acquire target information described in a common format from the target generation unit 126 realized by each of one or a plurality of types of application programs 112.
 経路計画部130は、エンドエフェクタ38の位置または姿勢を変更する場合に、目標情報、自己情報およびロボットモデルを取得してもよい。そして、経路計画部130は、目標情報、自己情報およびロボットモデルに基づき経路計画問題を解いて、アーム32の移動経路を示す経路情報を生成してもよい。アーム32の移動経路は、例えば、エンドエフェクタ38を、自己情報に含まれる自己位置および自己姿勢から、目標情報に含まれる目標位置および目標姿勢に変化させるための、アーム32の位置および姿勢の変化の軌跡を表してもよい。アーム32の移動軌跡は、アーム32に含まれる1または複数のリンクのそれぞれについての位置および姿勢の軌跡を表してもよい。 The route planning unit 130 may acquire target information, self-information, and a robot model when changing the position or posture of the end effector 38. Then, the route planning unit 130 may solve the route planning problem based on the target information, the self-information, and the robot model, and generate the route information indicating the movement route of the arm 32. The movement path of the arm 32 is, for example, a change in the position and posture of the arm 32 for changing the end effector 38 from the self-position and the self-posture included in the self-information to the target position and the target posture included in the target information. May represent the trajectory of. The movement locus of the arm 32 may represent a locus of position and posture for each of the one or more links included in the arm 32.
 移動制御部132は、目標生成部126から目標情報が出力された場合、アプリケーションプログラムインターフェース部128を介して目標情報を取得してもよい。この場合、移動制御部132は、自己情報推定部122から自己情報を取得してもよい。また、この場合、移動制御部132は、モデル管理部124からロボットモデルを取得してもよい。 When the target information is output from the target generation unit 126, the movement control unit 132 may acquire the target information via the application program interface unit 128. In this case, the movement control unit 132 may acquire self-information from the self-information estimation unit 122. Further, in this case, the movement control unit 132 may acquire the robot model from the model management unit 124.
 移動制御部132は、目標情報、自己情報およびロボットモデルを経路計画部130に与えて、経路計画部130から、目標情報、自己情報およびロボットモデルに基づく経路情報を取得してもよい。そして、移動制御部132は、取得した経路情報に基づき、ロボットドライバ114を介して、例えば、アーム32に含まれる1または複数のリンクのそれぞれの位置および姿勢、並びに、移動機構36の位置および姿勢を制御してもよい。 The movement control unit 132 may provide the target information, the self-information, and the robot model to the route planning unit 130, and acquire the target information, the self-information, and the route information based on the robot model from the route planning unit 130. Then, based on the acquired route information, the movement control unit 132, for example, the position and posture of each of the one or a plurality of links included in the arm 32, and the position and posture of the movement mechanism 36 via the robot driver 114. May be controlled.
 このような構成のロボット制御回路72は、エンドエフェクタ38をアプリケーションプログラム112により指示された目標位置および目標姿勢に変化させることができる。 The robot control circuit 72 having such a configuration can change the end effector 38 to the target position and the target posture instructed by the application program 112.
 さらに、エンドエフェクタ38がアーム32に取り付けられた場合、モデル管理部124は、アーム32に取り付けられたエンドエフェクタ38から識別情報を取得してもよい。より具体的には、モデル管理部124は、エンドエフェクタ38のエフェクタメモリ69に記憶されている識別情報を、第2バス73-2を介して取得してもよい。 Further, when the end effector 38 is attached to the arm 32, the model management unit 124 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the model management unit 124 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
 続いて、モデル管理部124は、取得した識別情報に基づき、アーム32に取り付けられたエンドエフェクタ38をモデル化したエンドエフェクタモデルを特定してもよい。エンドエフェクタモデルは、少なくともエンドエフェクタ38の重量、重心位置および形状を表すデータのいずれか1つを含んでもよい。そして、モデル管理部124は、特定したエンドエフェクタモデルに基づきロボットモデルを更新してもよい。例えば、モデル管理部124は、エンドエフェクタ38を除いた構成のロボット20をモデル化したロボットモデルに、特定したエンドエフェクタモデルにより表された情報を組み込んで、新たなロボットモデルを生成する。 Subsequently, the model management unit 124 may specify an end effector model that models the end effector 38 attached to the arm 32 based on the acquired identification information. The end effector model may include at least one of the data representing the weight, center of gravity position and shape of the end effector 38. Then, the model management unit 124 may update the robot model based on the specified end effector model. For example, the model management unit 124 creates a new robot model by incorporating the information represented by the specified end effector model into the robot model that models the robot 20 having the configuration excluding the end effector 38.
 エンドエフェクタモデルは、重量、重心位置および形状に加えて、エンドエフェクタ38が動作をするために必要な他のデータを含んでもよい。例えば、エンドエフェクタモデルは、対応するエンドエフェクタ38が物体に対して操作をする機構(例えば把持機構)等である場合、操作対象となる物体を識別するための情報(例えば物体の形状を表すデータ等)、および、操作対象ではない物体を識別するための情報等を含んでもよい。また、エンドエフェクタモデルは、操作対象への機械的なアプローチの方法、および、接触および把持時におけるエンドエフェクタ38の制御方法(例えば、コンプライアンス制御の方法)等を含んでもよい。 The end effector model may include, in addition to weight, center of gravity position and shape, other data necessary for the end effector 38 to operate. For example, in the end effector model, when the corresponding end effector 38 is a mechanism (for example, a gripping mechanism) that operates on an object, information for identifying the object to be operated (for example, data representing the shape of the object). Etc.), and information for identifying an object that is not the operation target may be included. The end effector model may also include a method of mechanical approach to the operating object, a method of controlling the end effector 38 during contact and grip (eg, a method of compliance control), and the like.
 また、例えば、エンドエフェクタモデルは、エンドエフェクタ38が検出装置、情報出力装置または情報入力装置等である場合、エンドエフェクタ38の操作方法および操作条件等を表す情報を含んでもよい。このようにエンドエフェクタモデルは、対応するエンドエフェクタ38を制御するために必要な各種の情報を含んでもよい。そして、アーム32にエンドエフェクタ38が取り付けられた場合、モデル管理部124は、このようなエンドエフェクタモデルに表された情報を組み込んだ新たなロボットモデルを生成してもよい。 Further, for example, when the end effector 38 is a detection device, an information output device, an information input device, or the like, the end effector model may include information indicating an operation method, operation conditions, and the like of the end effector 38. As described above, the end effector model may include various information necessary for controlling the corresponding end effector 38. Then, when the end effector 38 is attached to the arm 32, the model management unit 124 may generate a new robot model incorporating the information represented by such an end effector model.
 なお、ロボットモデルは、例えば、ロボット制御回路72内の不揮発メモリに予め記憶されてもよい。これに代えて、ロボットモデルは、ロボット20内に設けられた、ロボット制御回路72によりアクセス可能な他の記憶装置に予め記憶されていてもよい。ロボット制御回路72は、例えば起動した場合、不揮発メモリまたは記憶装置に記憶されたロボットモデルを読み出して、RAM等のメモリに展開してロボットモデルを用いた処理を実行してもよい。 The robot model may be stored in advance in the non-volatile memory in the robot control circuit 72, for example. Instead, the robot model may be stored in advance in another storage device provided in the robot 20 and accessible by the robot control circuit 72. When the robot control circuit 72 is started, for example, the robot model may be read out from a non-volatile memory or a storage device, expanded into a memory such as a RAM, and a process using the robot model may be executed.
 また、エンドエフェクタモデルは、例えば、ロボット制御回路72内の不揮発メモリにエンドエフェクタ38の種類毎に予め記憶されてもよい。これに代えて、ロボットモデルは、ロボット20内に設けられた、ロボット制御回路72によりアクセス可能な他の記憶装置にエンドエフェクタ38の種類毎に予め記憶されていてもよい。また、エンドエフェクタモデルは、エンドエフェクタ38内に設けられた不揮発メモリに記憶されていてもよい。ロボット制御回路72は、アーム32にエンドエフェクタ38が取り付けられた場合、不揮発メモリ、他の記憶装置またはエンドエフェクタ38内の不揮発メモリからエンドエフェクタモデルを読み出し、RAM等のメモリ上に展開する。そして、ロボット制御回路72は、RAM等のメモリ上において、エンドエフェクタモデルを組み込んだ新たなロボットモデルを生成する。 Further, the end effector model may be stored in advance in the non-volatile memory in the robot control circuit 72 for each type of the end effector 38, for example. Instead, the robot model may be stored in advance for each type of end effector 38 in another storage device provided in the robot 20 and accessible by the robot control circuit 72. Further, the end effector model may be stored in the non-volatile memory provided in the end effector 38. When the end effector 38 is attached to the arm 32, the robot control circuit 72 reads the end effector model from the non-volatile memory, another storage device, or the non-volatile memory in the end effector 38, and deploys the end effector model on a memory such as RAM. Then, the robot control circuit 72 generates a new robot model incorporating an end effector model on a memory such as RAM.
 また、エンドエフェクタモデルは、情報処理装置22またはネットワーク上に設けられた外部装置に記憶されていてもよい。この場合、ロボット制御回路72は、無線通信およびネットワークを介して、情報処理装置22または外部装置からエンドエフェクタモデルを受信し、RAM等のメモリ上に展開してもよい。 Further, the end effector model may be stored in the information processing device 22 or an external device provided on the network. In this case, the robot control circuit 72 may receive the end effector model from the information processing device 22 or an external device via wireless communication and a network and deploy it on a memory such as a RAM.
 また、ロボット制御回路72は、アーム32にエンドエフェクタ38が取り付けられた場合、ロボット20内の不揮発メモリ等にアクセスして対応するエンドエフェクタモデルが記憶されているか否かを確認してもよい。この場合、ロボット制御回路72は、ロボット20内の不揮発メモリ等に対応するエンドエフェクタモデルが記憶されていれば、ロボット20内の不揮発メモリから対応するエンドエフェクタモデルを読み出してもよい。ロボット制御回路72は、ロボット20内の不揮発メモリ等に対応するエンドエフェクタモデルが記憶されていな場合には、無線通信およびネットワークを介して、情報処理装置22または外部装置からエンドエフェクタモデルを受信してもよい。 Further, when the end effector 38 is attached to the arm 32, the robot control circuit 72 may access the non-volatile memory or the like in the robot 20 to check whether or not the corresponding end effector model is stored. In this case, the robot control circuit 72 may read the corresponding end effector model from the non-volatile memory in the robot 20 as long as the end effector model corresponding to the non-volatile memory in the robot 20 is stored. When the end effector model corresponding to the non-volatile memory in the robot 20 is not stored, the robot control circuit 72 receives the end effector model from the information processing device 22 or an external device via wireless communication and a network. You may.
 図13は、アプリケーションプログラム112から目標情報が出力された場合のロボット制御回路72の処理フローを示す図である。アプリケーションプログラム112から目標情報が出力された場合、ロボット制御回路72の移動制御部132は、図13に示す流れで処理を実行してもよい。 FIG. 13 is a diagram showing a processing flow of the robot control circuit 72 when the target information is output from the application program 112. When the target information is output from the application program 112, the movement control unit 132 of the robot control circuit 72 may execute the process according to the flow shown in FIG.
 まず、S11において、移動制御部132は、アプリケーションプログラム112により実現される目標生成部126から目標情報が出力されたか否かを判断してもよい。目標情報が出力された場合(S11のYes)、移動制御部132は、処理をS12に進めてもよい。 First, in S11, the movement control unit 132 may determine whether or not the target information has been output from the target generation unit 126 realized by the application program 112. When the target information is output (Yes in S11), the movement control unit 132 may proceed to the process in S12.
 S12において、移動制御部132は、自己情報推定部122から、自己情報(エンドエフェクタ38の自己位置および自己姿勢)を取得してもよい。続いて、S13において、移動制御部132は、モデル管理部124からロボットモデルを取得してもよい。 In S12, the movement control unit 132 may acquire self-information (self-position and self-posture of the end effector 38) from the self-information estimation unit 122. Subsequently, in S13, the movement control unit 132 may acquire the robot model from the model management unit 124.
 続いて、S14において、移動制御部132は、目標情報、自己情報およびロボットモデルを経路計画部130に与え、経路計画部130に経路情報を生成させてもよい。そして、移動制御部132は、経路計画部130から経路情報を取得してもよい。 Subsequently, in S14, the movement control unit 132 may provide the target information, the self-information, and the robot model to the route planning unit 130, and cause the route planning unit 130 to generate the route information. Then, the movement control unit 132 may acquire the route information from the route planning unit 130.
 そして、S15において、移動制御部132は、取得した経路情報に基づき、ロボットドライバ114を介して、アーム32に含まれる1または複数のリンクのそれぞれの位置および姿勢、並びに、移動機構36の位置および姿勢を制御してもよい。 Then, in S15, the movement control unit 132, based on the acquired route information, via the robot driver 114, each position and posture of one or a plurality of links included in the arm 32, and the position and the position of the movement mechanism 36. The posture may be controlled.
 このような処理を実行するロボット制御回路72は、エンドエフェクタ38をアプリケーションプログラム112により指示された目標位置および目標姿勢に変化させることができる。 The robot control circuit 72 that executes such processing can change the end effector 38 to the target position and the target posture instructed by the application program 112.
 図14は、アーム32にエンドエフェクタ38が取り付けられた場合のロボット制御回路72の処理フローを示す図である。アーム32にエンドエフェクタ38が取り付けられた場合、ロボット制御回路72のモデル管理部124は、図14に示す流れで処理を実行してもよい。 FIG. 14 is a diagram showing a processing flow of the robot control circuit 72 when the end effector 38 is attached to the arm 32. When the end effector 38 is attached to the arm 32, the model management unit 124 of the robot control circuit 72 may execute the process according to the flow shown in FIG.
 まず、S21において、モデル管理部124は、エンドエフェクタ38がアーム32に取り付けられたか否かを判断してもよい。エンドエフェクタ38がアーム32に取り付けられた場合(S21のYes)、モデル管理部124は、処理をS22に進めてもよい。 First, in S21, the model management unit 124 may determine whether or not the end effector 38 is attached to the arm 32. When the end effector 38 is attached to the arm 32 (Yes in S21), the model management unit 124 may proceed with the process to S22.
 S22において、モデル管理部124は、アーム32に取り付けられたエンドエフェクタ38から識別情報を取得してもよい。より具体的には、モデル管理部124は、エンドエフェクタ38のエフェクタメモリ69に記憶されている識別情報を、第2バス73-2を介して取得してもよい。 In S22, the model management unit 124 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the model management unit 124 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
 続いて、S23において、モデル管理部124は、取得した識別情報に基づき、アーム32に取り付けられたエンドエフェクタ38をモデル化したエンドエフェクタモデルを特定してもよい。 Subsequently, in S23, the model management unit 124 may specify an end effector model that models the end effector 38 attached to the arm 32 based on the acquired identification information.
 続いて、S24において、モデル管理部124は、特定したエンドエフェクタモデルに基づきロボットモデルを更新してもよい。例えば、モデル管理部124は、エンドエフェクタ38を除いた構成のロボット20をモデル化したロボットモデルに、特定したエンドエフェクタモデルにより表された情報を組み込んで、新たなロボットモデルを生成してもよい。 Subsequently, in S24, the model management unit 124 may update the robot model based on the specified end effector model. For example, the model management unit 124 may generate a new robot model by incorporating the information represented by the specified end effector model into a robot model that models the robot 20 having a configuration excluding the end effector 38. ..
 このような処理を実行するロボット20は、エンドエフェクタ38が取り付けられる毎に、ロボットモデルを更新することができる。従って、ロボット20は、現状の構成を反映した精度の良いロボットモデルを生成することができる。これにより、ロボット20は、どのような種類のエンドエフェクタ38が取り付けられた場合であっても、アーム32を安定して動作させることができる。 The robot 20 that executes such processing can update the robot model every time the end effector 38 is attached. Therefore, the robot 20 can generate an accurate robot model that reflects the current configuration. As a result, the robot 20 can stably operate the arm 32 regardless of the type of end effector 38 attached.
 また、ロボット20は、オペレーティングシステム110によってエンドエフェクタ38を取り付けた状態のロボットモデルを管理してもよい。これにより、ロボット20は、アプリケーションプログラム112がロボットモデルを管理しなくてよいので、アプリケーションプログラム112での処理負担を軽減することができる。従って、アプリケーションプログラム112の作成者は、ロボットモデルを考慮せずに、アプリケーションプログラム112を作成することができる。従って、ロボット制御回路72によれば、アプリケーションプログラム112の作成者の開発負担を軽減させることができる。 Further, the robot 20 may manage the robot model with the end effector 38 attached by the operating system 110. As a result, the robot 20 does not have to manage the robot model by the application program 112, so that the processing load on the application program 112 can be reduced. Therefore, the creator of the application program 112 can create the application program 112 without considering the robot model. Therefore, according to the robot control circuit 72, the development burden on the creator of the application program 112 can be reduced.
 また、ロボット制御回路72は、経路情報の生成時以外にもロボットモデルを参照することができる。例えば、ロボット制御回路72は、エンドエフェクタ38の動作を制御する場合、ロボットモデルを参照する。例えば、エンドエフェクタ38の動作を制御する場合、ロボット制御回路72は、ロボットモデルに含まれる、エンドエフェクタ38を制御するために必要な各種の情報を参照する。例えば、エンドエフェクタ38が把持機構またはブラシ等である場合、ロボット制御回路72は、更新されたロボットモデルに含まれる操作対象への機械的なアプローチの方法および接触および把持時における制御方法(コンプライアンス制御の方法)等を参照して、エンドエフェクタ38の動作を制御する。また、例えば、エンドエフェクタ38が検出装置、情報出力装置または情報入力装置等である場合、ロボット制御回路72は、更新されたロボットモデルに含まれる操作方法および操作条件等を表す情報を参照して、エンドエフェクタ38を制御する。 Further, the robot control circuit 72 can refer to the robot model other than when the route information is generated. For example, the robot control circuit 72 refers to a robot model when controlling the operation of the end effector 38. For example, when controlling the operation of the end effector 38, the robot control circuit 72 refers to various information necessary for controlling the end effector 38 included in the robot model. For example, when the end effector 38 is a gripping mechanism, a brush, or the like, the robot control circuit 72 uses a method of mechanical approach to the operation target included in the updated robot model and a control method during contact and grip (compliance control). The operation of the end effector 38 is controlled with reference to the above method) and the like. Further, for example, when the end effector 38 is a detection device, an information output device, an information input device, or the like, the robot control circuit 72 refers to information representing an operation method, an operation condition, and the like included in the updated robot model. , Control the end effector 38.
 このように、ロボット20は、エンドエフェクタ38が取り付けられる毎に、ロボットモデルに、取り付けられたエンドエフェクタ38に対応するエンドエフェクタモデルを組み込んでもよい。これにより、ロボット20は、複数のエンドエフェクタ38を切り替えてタスクを実行する場合であっても、それぞれのエンドエフェクタ38を安定して動作させることができる。従って、ロボット20は、複数のエンドエフェクタ38を用いたタスクを安定して実行させることができる。 In this way, the robot 20 may incorporate an end effector model corresponding to the attached end effector 38 into the robot model each time the end effector 38 is attached. As a result, the robot 20 can stably operate each of the end effectors 38 even when the plurality of end effectors 38 are switched to execute the task. Therefore, the robot 20 can stably execute the task using the plurality of end effectors 38.
 (第1変形例)
 図15は、第1変形例に係るロボット20の機能構成を示す図である。第1変形例において、アーム32は、力覚センサ212と、送信回路214とをさらに備えてもよい。
(First modification)
FIG. 15 is a diagram showing a functional configuration of the robot 20 according to the first modification. In the first modification, the arm 32 may further include a force sensor 212 and a transmission circuit 214.
 力覚センサ212は、アーム32の先端に設けられた軸部75に作用する力成分およびトルク成分を検出してもよい。力覚センサ212は、例えば、6軸力覚センサであり、軸部75に作用する力およびトルクのそれぞれを三次元空間ベクトルで表すセンサ情報を出力してもよい。 The force sensor 212 may detect a force component and a torque component acting on the shaft portion 75 provided at the tip of the arm 32. The force sensor 212 is, for example, a 6-axis force sensor, and may output sensor information representing each of the force and torque acting on the shaft portion 75 as a three-dimensional space vector.
 送信回路214は、通信回路71と第2バス73-2を介して接続されてもよい。送信回路214は、力覚センサ212により検知されたセンサ情報を、第2バス73-2を介してロボット制御回路72へと送信してもよい。 The transmission circuit 214 may be connected to the communication circuit 71 via the second bus 73-2. The transmission circuit 214 may transmit the sensor information detected by the force sensor 212 to the robot control circuit 72 via the second bus 73-2.
 図16は、第1変形例に係るロボット制御回路72の機能構成を示す図である。第1変形例に係るロボット制御回路72は、慣性パラメータ算出部216をさらに備えてもよい。慣性パラメータ算出部216は、オペレーティングシステム110により実現されてもよい。 FIG. 16 is a diagram showing a functional configuration of the robot control circuit 72 according to the first modification. The robot control circuit 72 according to the first modification may further include an inertia parameter calculation unit 216. The inertia parameter calculation unit 216 may be realized by the operating system 110.
 慣性パラメータ算出部216は、エンドエフェクタ38を動作させたり、アーム32を移動させたりしている場合において、力覚センサ212により検知されたセンサ情報を、第2バス73-2を介して取得してもよい。そして、慣性パラメータ算出部216は、取得したセンサ情報に基づき、エンドエフェクタ38の慣性パラメータを算出してもよい。慣性パラメータ算出部216は、慣性パラメータとして、例えば、エンドエフェクタ38の重心位置、エンドエフェクタ38の重量およびエンドエフェクタ38の慣性モーメントの少なくとも1つを算出してもよい。 The inertia parameter calculation unit 216 acquires the sensor information detected by the force sensor 212 when the end effector 38 is operated or the arm 32 is moved via the second bus 73-2. You may. Then, the inertia parameter calculation unit 216 may calculate the inertia parameter of the end effector 38 based on the acquired sensor information. The inertial parameter calculation unit 216 may calculate, for example, at least one of the position of the center of gravity of the end effector 38, the weight of the end effector 38, and the moment of inertia of the end effector 38 as inertial parameters.
 第1変形例において、モデル管理部124は、エンドエフェクタ38の慣性パラメータが変化した場合、変化後のエンドエフェクタ38の慣性パラメータを慣性パラメータ算出部216から取得してもよい。そして、モデル管理部124は、エンドエフェクタ38の慣性パラメータが変化した場合、変化後の新たな慣性パラメータに基づき、ロボットモデルを更新してもよい。 In the first modification, when the inertial parameter of the end effector 38 changes, the model management unit 124 may acquire the inertial parameter of the changed end effector 38 from the inertial parameter calculation unit 216. Then, when the inertial parameter of the end effector 38 changes, the model management unit 124 may update the robot model based on the new inertial parameter after the change.
 図17は、第1変形例におけるアプリケーションプログラム112から目標情報が出力された場合のロボット制御回路72の処理フローを示す図である。なお、第1変形例において、ロボット制御回路72は、図13に示した処理に、S31~S35の処理を追加した処理を実行してもよい。第1変形例に係るロボット制御回路72の処理については、図13に示した処理との相違点を説明する。 FIG. 17 is a diagram showing a processing flow of the robot control circuit 72 when target information is output from the application program 112 in the first modification. In the first modification, the robot control circuit 72 may execute a process in which the processes of S31 to S35 are added to the process shown in FIG. The processing of the robot control circuit 72 according to the first modification will be described as being different from the processing shown in FIG.
 S15でアーム32および移動機構36を制御している最中、S31において、移動制御部132は、エンドエフェクタ38の慣性パラメータが変化したか否かを判断してもよい。エンドエフェクタ38の慣性パラメータが変化しない場合(S31のNo)、移動制御部132は、処理をS32に進めてもよい。 While controlling the arm 32 and the movement mechanism 36 in S15, the movement control unit 132 may determine in S31 whether or not the inertial parameters of the end effector 38 have changed. When the inertial parameter of the end effector 38 does not change (No in S31), the movement control unit 132 may proceed to the process in S32.
 S32において、移動制御部132は、アーム32および移動機構36の移動が終了したか否かを判断してもよい。移動が終了していない場合(S32のNo)、移動制御部132は、処理をS15に戻し、処理を繰り返してもよい。移動が終了した場合(S32のYes)、移動制御部132は、本フローを終了してもよい。 In S32, the movement control unit 132 may determine whether or not the movement of the arm 32 and the movement mechanism 36 has been completed. When the movement is not completed (No in S32), the movement control unit 132 may return the process to S15 and repeat the process. When the movement is completed (Yes in S32), the movement control unit 132 may end this flow.
 エンドエフェクタ38の慣性パラメータが変化した場合(S31のYes)、移動制御部132は、処理をS33に進めてもよい。 When the inertial parameter of the end effector 38 changes (Yes in S31), the movement control unit 132 may proceed to the process in S33.
 S33において、移動制御部132は、自己情報推定部122から、自己情報を取得する。続いて、S34において、移動制御部132は、モデル管理部124から、エンドエフェクタ38の慣性パラメータの変化に応じて更新されたロボットモデルを取得してもよい。そして、移動制御部132は、処理をS35に進めてもよい。 In S33, the movement control unit 132 acquires self-information from the self-information estimation unit 122. Subsequently, in S34, the movement control unit 132 may acquire the robot model updated according to the change in the inertial parameter of the end effector 38 from the model management unit 124. Then, the movement control unit 132 may proceed with the process to S35.
 S35において、移動制御部132は、目標情報、自己情報および更新後のロボットモデルを経路計画部130に与えて、経路計画部130から新たな経路情報を取得してもよい。そして、移動制御部132は、処理をS15に戻し、処理を繰り返してもよい。 In S35, the movement control unit 132 may provide the target information, the self-information, and the updated robot model to the route planning unit 130, and acquire new route information from the route planning unit 130. Then, the movement control unit 132 may return the process to S15 and repeat the process.
 以上のような第1変形例に係るロボット制御回路72は、アーム32が移動したことまたはエンドエフェクタ38が動作したこと等に伴いエンドエフェクタ38の慣性パラメータが変化した場合、ロボットモデルを更新してもよい。これにより、第1変形例に係るロボット制御回路72は、ロボット20の最新の状態を反映した精度の良いロボットモデルを生成することができる。従って、第1変形例に係るロボット制御回路72によれば、エンドエフェクタ38がどのような状態に変化した場合であっても、アーム32を安定して動作させることができる。 The robot control circuit 72 according to the first modification as described above updates the robot model when the inertial parameters of the end effector 38 change due to the movement of the arm 32 or the operation of the end effector 38. May be good. As a result, the robot control circuit 72 according to the first modification can generate a highly accurate robot model that reflects the latest state of the robot 20. Therefore, according to the robot control circuit 72 according to the first modification, the arm 32 can be stably operated regardless of the state of the end effector 38.
 (第2変形例)
 図18は、第2変形例に係るロボット制御回路72の機能構成を示す図である。第2変形例に係るロボット制御回路72は、周囲情報生成部222をさらに備えてもよい。周囲情報生成部222は、オペレーティングシステム110により実現されてもよい。
(Second modification)
FIG. 18 is a diagram showing a functional configuration of the robot control circuit 72 according to the second modification. The robot control circuit 72 according to the second modification may further include a surrounding information generation unit 222. The surrounding information generation unit 222 may be realized by the operating system 110.
 周囲情報生成部222は、ロボット20の周囲の存在する1または複数の物体に関する情報(周囲情報)を生成してもよい。例えば、周囲情報生成部222は、ロボット20の周囲を撮像した画像および各種のセンサ情報等に基づき、1または複数の物体のそれぞれの位置および形状を推定してもよい。そして、周囲情報生成部222は、推定した1または複数の物体のそれぞれの現在における位置および形状に基づき周囲情報を生成してもよい。 The surrounding information generation unit 222 may generate information (surrounding information) about one or more existing objects around the robot 20. For example, the surrounding information generation unit 222 may estimate the position and shape of each of one or more objects based on an image of the surroundings of the robot 20 and various sensor information. Then, the surrounding information generation unit 222 may generate surrounding information based on the current position and shape of each of the estimated one or a plurality of objects.
 第2変形例において、経路計画部130は、エンドエフェクタ38の位置または姿勢を変更する場合に、目標情報、自己情報およびロボットモデルに加えて、さらに周囲情報を取得してもよい。そして、経路計画部130は、周囲情報、目標情報、自己情報およびロボットモデルに基づき経路計画問題を解いて、経路情報を生成してもよい。この場合において、経路計画部130は、周囲情報に基づき、ロボット20が周囲の物体に機械的に干渉しないような経路情報を生成してもよい。 In the second modification, when changing the position or posture of the end effector 38, the route planning unit 130 may acquire surrounding information in addition to the target information, the self-information, and the robot model. Then, the route planning unit 130 may solve the route planning problem based on the surrounding information, the target information, the self-information, and the robot model, and generate the route information. In this case, the route planning unit 130 may generate route information based on the surrounding information so that the robot 20 does not mechanically interfere with the surrounding objects.
 図19は、第2変形例におけるアプリケーションプログラム112から目標情報が出力された場合のロボット制御回路72の処理フローを示す図である。なお、第2変形例において、ロボット制御回路72は、図19に示す処理を実行してもよい。 FIG. 19 is a diagram showing a processing flow of the robot control circuit 72 when target information is output from the application program 112 in the second modification. In the second modification, the robot control circuit 72 may execute the process shown in FIG.
 まず、S41において、移動制御部132は、アプリケーションプログラム112により実現される目標生成部126から目標情報が出力されたか否かを判断してもよい。目標情報が出力された場合(S41のYes)、移動制御部132は、処理をS42に進めてもよい。 First, in S41, the movement control unit 132 may determine whether or not the target information has been output from the target generation unit 126 realized by the application program 112. When the target information is output (Yes in S41), the movement control unit 132 may proceed to the process in S42.
 S42において、移動制御部132は、周囲情報生成部222から、周囲情報を取得してもよい。続いて、S43において、移動制御部132は、自己情報推定部122から、自己情報を取得する。続いて、S44において、移動制御部132は、モデル管理部124からロボットモデルを取得してもよい。 In S42, the movement control unit 132 may acquire the surrounding information from the surrounding information generation unit 222. Subsequently, in S43, the movement control unit 132 acquires self-information from the self-information estimation unit 122. Subsequently, in S44, the movement control unit 132 may acquire the robot model from the model management unit 124.
 続いて、S45において、移動制御部132は、周囲情報、目標情報、自己情報およびロボットモデルを経路計画部130に与え、経路計画部130に、ロボット20が周囲の物体に機械的に干渉しないような経路情報を生成してもよい。そして、移動制御部132は、経路計画部130から経路情報を取得してもよい。 Subsequently, in S45, the movement control unit 132 provides surrounding information, target information, self-information, and a robot model to the route planning unit 130 so that the robot 20 does not mechanically interfere with surrounding objects in the route planning unit 130. Route information may be generated. Then, the movement control unit 132 may acquire the route information from the route planning unit 130.
 そして、S46において、移動制御部132は、取得した経路情報に基づき、ロボットドライバ114を介して、アーム32に含まれる1または複数のリンクのそれぞれの位置および姿勢、並びに、移動機構36の位置および姿勢を制御してもよい。 Then, in S46, the movement control unit 132, based on the acquired route information, via the robot driver 114, each position and posture of one or a plurality of links included in the arm 32, and the position and the position of the movement mechanism 36. The posture may be controlled.
 アーム32および移動機構36を制御している最中(S46)、S47において、移動制御部132は、周囲情報生成部222から、周囲情報を取得してもよい。続いて、S48において、移動制御部132は、直前から周囲情報が変化したか否かを判断してもよい。すなわち、移動制御部132は、周囲の物体の位置または形状が直前の状態から変化したか否かを判断する。周囲情報が変化しない場合(S48のNo)、移動制御部132は、処理をS49に進めてもよい。 While controlling the arm 32 and the movement mechanism 36 (S46), in S47, the movement control unit 132 may acquire the surrounding information from the surrounding information generation unit 222. Subsequently, in S48, the movement control unit 132 may determine whether or not the surrounding information has changed from immediately before. That is, the movement control unit 132 determines whether or not the position or shape of the surrounding object has changed from the immediately preceding state. When the surrounding information does not change (No in S48), the movement control unit 132 may proceed to the process in S49.
 S49において、移動制御部132は、アーム32および移動機構36の移動が終了したか否かを判断してもよい。移動が終了していない場合(S49のNo)、移動制御部132は、処理をS46に戻し、処理を繰り返してもよい。移動が終了した場合(S49のYes)、移動制御部132は、本フローを終了してもよい。 In S49, the movement control unit 132 may determine whether or not the movement of the arm 32 and the movement mechanism 36 has been completed. When the movement is not completed (No in S49), the movement control unit 132 may return the process to S46 and repeat the process. When the movement is completed (Yes in S49), the movement control unit 132 may end this flow.
 周囲情報が変化した場合(S48のYes)、移動制御部132は、処理をS50に進める。S50において、移動制御部132は、自己情報推定部122から、自己情報を取得してもよい。S51において、移動制御部132は、周囲情報、目標情報、自己情報およびロボットモデルを経路計画部130に与えて、経路計画部130から新たな経路情報を取得してもよい。そして、移動制御部132は、処理をS46に戻し、処理を繰り返してもよい。 When the surrounding information changes (Yes in S48), the movement control unit 132 advances the process to S50. In S50, the movement control unit 132 may acquire self-information from the self-information estimation unit 122. In S51, the movement control unit 132 may provide the surrounding information, the target information, the self-information, and the robot model to the route planning unit 130, and acquire new route information from the route planning unit 130. Then, the movement control unit 132 may return the process to S46 and repeat the process.
 以上のような第2変形例に係るロボット制御回路72は、周囲の物体の位置および形状に基づき、経路情報を生成してもよい。これにより、第2変形例に係るロボット制御回路72は、周囲の物体に機械的に干渉しないように、アーム32および移動機構36を制御することができる。さらに、第2変形例に係るロボット制御回路72は、周囲の物体の位置または形状が変化した場合、再度、新たな経路情報を生成する。これにより、第2変形例に係るロボット制御回路72は、周囲の物体の位置または形状が変化した場合であっても、周囲の物体に機械的に干渉しないように、アーム32および移動機構36を制御することができる。 The robot control circuit 72 according to the second modification as described above may generate route information based on the position and shape of surrounding objects. As a result, the robot control circuit 72 according to the second modification can control the arm 32 and the moving mechanism 36 so as not to mechanically interfere with surrounding objects. Further, the robot control circuit 72 according to the second modification generates new route information again when the position or shape of the surrounding object changes. As a result, the robot control circuit 72 according to the second modification has the arm 32 and the moving mechanism 36 so as not to mechanically interfere with the surrounding objects even when the position or shape of the surrounding objects changes. Can be controlled.
 (第3変形例)
 図20は、第3変形例に係るロボット制御回路72の機能構成を示す図である。第3変形例に係るロボット制御回路72は、アプリケーション選択部232をさらに備えてもよい。アプリケーション選択部232は、オペレーティングシステム110により実現されてもよい。
(Third modification example)
FIG. 20 is a diagram showing a functional configuration of the robot control circuit 72 according to the third modification. The robot control circuit 72 according to the third modification may further include an application selection unit 232. The application selection unit 232 may be implemented by the operating system 110.
 アプリケーション選択部232は、アーム32に取り付け可能な複数種類のエンドエフェクタ38のそれぞれと、対応するアプリケーションプログラム112との対応関係が予め登録されてもよい。エンドエフェクタ38がアーム32に取り付けられた場合、アプリケーション選択部232は、アーム32に取り付けられたエンドエフェクタ38から識別情報を取得してもよい。より具体的には、アプリケーション選択部232は、エンドエフェクタ38のエフェクタメモリ69に記憶されている識別情報を、第2バス73-2を介して取得してもよい。 The application selection unit 232 may register in advance the correspondence between each of the plurality of types of end effectors 38 that can be attached to the arm 32 and the corresponding application program 112. When the end effector 38 is attached to the arm 32, the application selection unit 232 may acquire identification information from the end effector 38 attached to the arm 32. More specifically, the application selection unit 232 may acquire the identification information stored in the effector memory 69 of the end effector 38 via the second bus 73-2.
 続いて、アプリケーション選択部232は、取得した識別情報に基づき、取り付けられたエンドエフェクタ38に対応するアプリケーションプログラム112を、予め登録された対応関係に基づき選択してもよい。そして、アプリケーション選択部232は、アプリケーションプログラムインターフェース部128を介して、選択したアプリケーションプログラム112を起動させてもよい。 Subsequently, the application selection unit 232 may select the application program 112 corresponding to the attached end effector 38 based on the acquired identification information, based on the correspondence relationship registered in advance. Then, the application selection unit 232 may start the selected application program 112 via the application program interface unit 128.
 なお、アプリケーション選択部232は、選択したアプリケーションプログラム112を起動させることに代えて、選択したアプリケーションプログラム112を識別する情報を情報処理装置22のモニタに表示してもよい。これにより、アプリケーション選択部232は、エンドエフェクタ38を制御するために適切なアプリケーションプログラム112をユーザに提示することができる。また、アプリケーション選択部232は、取り付けられたエンドエフェクタ38に対応する1以上のアプリケーションプログラム112を例えば情報処理装置22のモニタに表示することによりユーザに提示してもよい。そして、アプリケーション選択部232は、情報処理装置22に対するユーザからの指定に基づいて、アーム32およびエンドエフェクタ38に用いるアプリケーションプログラム112を選択してもよい。 Note that the application selection unit 232 may display information identifying the selected application program 112 on the monitor of the information processing device 22 instead of invoking the selected application program 112. As a result, the application selection unit 232 can present the user with an appropriate application program 112 for controlling the end effector 38. Further, the application selection unit 232 may present the user by displaying one or more application programs 112 corresponding to the attached end effector 38 on the monitor of the information processing device 22, for example. Then, the application selection unit 232 may select the application program 112 to be used for the arm 32 and the end effector 38 based on the user's designation for the information processing device 22.
 また、アプリケーション選択部232は、選択したアプリケーションプログラム112がロボット制御回路72にインストールされていない場合、ネットワークを介して外部装置であるサーバにアクセスし、選択したアプリケーションプログラム112をダウンロードさせてもよい。また、アプリケーション選択部232は、選択したアプリケーションプログラム112がロボット制御回路72にインストールされていない場合であって、情報処理装置22にアプリケーションプログラム112が既に格納されている場合には、情報処理装置22を外部装置とみなしてアプリケーションプログラム112を受信してもよい。また、アプリケーション選択部232は、選択したアプリケーションプログラム112がロボット制御回路72にインストールされていない場合、販売用のサーバサイトにアクセスし、選択したアプリケーションプログラム112を購入可能なページを情報処理装置22のモニタに表示してもよい。そして、アプリケーション選択部232は、ユーザによる購入操作がされた場合、アプリケーションプログラム112を販売用のサーバサイトからダウンロードしてもよい。 Further, when the selected application program 112 is not installed in the robot control circuit 72, the application selection unit 232 may access the server, which is an external device, via the network and download the selected application program 112. Further, the application selection unit 232 is the information processing device 22 when the selected application program 112 is not installed in the robot control circuit 72 and the application program 112 is already stored in the information processing device 22. May be regarded as an external device and the application program 112 may be received. If the selected application program 112 is not installed in the robot control circuit 72, the application selection unit 232 accesses the server site for sale and displays a page on the information processing device 22 where the selected application program 112 can be purchased. It may be displayed on the monitor. Then, the application selection unit 232 may download the application program 112 from the server site for sale when the purchase operation is performed by the user.
 以上のような第3変形例に係るロボット制御回路72は、エンドエフェクタ38をアーム32に取り付けた場合、取り付けたエンドエフェクタ38に対応するアプリケーションプログラム112を選択することができる。これにより、第3変形例に係るロボット制御回路72は、適切なアプリケーションプログラム112によりエンドエフェクタ38を制御させることができる。 When the end effector 38 is attached to the arm 32, the robot control circuit 72 according to the third modification as described above can select the application program 112 corresponding to the attached end effector 38. As a result, the robot control circuit 72 according to the third modification can control the end effector 38 by an appropriate application program 112.
 また、アプリケーション選択部232は、アーム32に取り付けられたエンドエフェクタ38から識別情報を取得した場合、取得した識別情報を認証してもよい。アプリケーション選択部232は、例えば、ネットワークを介してサーバ等にアクセスして、取得した識別情報が正しいかどうか認証してもよいし、ユーザに情報処理装置22を介して認証コードを入力させてエンドエフェクタ38の使用権限を有しているか否かを認証してもよい。そして、アプリケーション選択部232は、認証が成功した場合、予め登録された対応関係に基づき適切なアプリケーションプログラム112を選択してもよい。また、アプリケーション選択部232は、認証の結果をユーザに対して出力してもよい。例えば、識別情報の認証が失敗した場合、権限の無いエンドエフェクタ38が取り付けられたと判断して、ユーザに警告情報を出力してもよい。 Further, when the application selection unit 232 acquires the identification information from the end effector 38 attached to the arm 32, the application selection unit 232 may authenticate the acquired identification information. The application selection unit 232 may, for example, access a server or the like via a network to authenticate whether or not the acquired identification information is correct, or cause the user to input an authentication code via the information processing device 22 to end the process. You may authenticate whether or not you have the authority to use the effector 38. Then, when the authentication is successful, the application selection unit 232 may select an appropriate application program 112 based on the correspondence relationship registered in advance. Further, the application selection unit 232 may output the authentication result to the user. For example, if the authentication of the identification information fails, it may be determined that the end effector 38 without authority is attached, and the warning information may be output to the user.
 (第4変形例)
 第4変形例に係るロボット20は、周囲の被写体を撮像するカメラを備えてもよい。ロボット制御回路72は、このカメラを制御する。この場合、エンドエフェクタ38は、識別情報を含む情報を表す二次元コードが外側面に印刷されていてもよい。そして、ロボット制御回路72は、エンドエフェクタ38がアーム32に取り付けられた場合、カメラを制御して、エンドエフェクタ38に印刷された二次元コードを撮像し、二次元コードに含まれる識別情報を取得する。これにより、第4変形例に係るロボット制御回路72は、エフェクタメモリ69から識別情報を読み出すことに代えて、エンドエフェクタ38に印刷された二次元コードから識別情報を取得することができる。
(Fourth modification)
The robot 20 according to the fourth modification may include a camera that captures an image of a surrounding subject. The robot control circuit 72 controls this camera. In this case, the end effector 38 may have a two-dimensional code representing information including identification information printed on the outer surface. Then, when the end effector 38 is attached to the arm 32, the robot control circuit 72 controls the camera, images the two-dimensional code printed on the end effector 38, and acquires the identification information included in the two-dimensional code. To do. As a result, the robot control circuit 72 according to the fourth modification can acquire the identification information from the two-dimensional code printed on the end effector 38 instead of reading the identification information from the effector memory 69.
 また、ロボット制御回路72は、エンドエフェクタ38がアーム32に取り付けられた場合、カメラを制御して、エンドエフェクタ38の外観の全体または特定の一部分を撮像して、エンドエフェクタ38の識別情報を判断してもよい。また、ロボット制御回路72は、エフェクタメモリ69から読み出した情報およびカメラにより撮像した画像から取得した情報を合成して、エンドエフェクタ38の識別情報を生成してもよい。このような第4変形例に係るロボット20は、二次元コードまたはエンドエフェクタ38の外観構造等に基づきエンドエフェクタ38の識別情報を取得することができる。 Further, when the end effector 38 is attached to the arm 32, the robot control circuit 72 controls the camera to image the entire appearance or a specific part of the appearance of the end effector 38 to determine the identification information of the end effector 38. You may. Further, the robot control circuit 72 may generate identification information of the end effector 38 by synthesizing the information read from the effector memory 69 and the information acquired from the image captured by the camera. The robot 20 according to the fourth modification can acquire the identification information of the end effector 38 based on the two-dimensional code or the appearance structure of the end effector 38.
 (第5変形例)
 第5変形例に係るロボット20は、ベース部分に対してアーム32全体を取り付けおよび取り外し可能であってもよい。この場合、ベース部分は、例えば、移動機構36である。第5変形例に係るロボット20は、アーム32を取り付けた場合に、対応するアームモデルに基づき、ロボットモデルを更新する。この場合、ロボット20は、アームモデルを、実施形態で説明したエンドエフェクタモデルと同様に取り扱うことにより、ロボットモデルの更新を実現することができる。
(Fifth modification)
The robot 20 according to the fifth modification may have the entire arm 32 attached to and detached from the base portion. In this case, the base portion is, for example, the moving mechanism 36. When the arm 32 is attached, the robot 20 according to the fifth modification updates the robot model based on the corresponding arm model. In this case, the robot 20 can update the robot model by handling the arm model in the same manner as the end effector model described in the embodiment.
 (ロボット制御回路72のハードウェア構成)
 前述した実施形態における各装置(ロボット制御回路72)の一部又は全部は、ハードウェアで構成されていてもよいし、CPU(Central Processing Unit)、又はGPU(Graphics Processing Unit)等が実行するソフトウェア(プログラム)の情報処理で構成されてもよい。ソフトウェアの情報処理で構成される場合には、前述した実施形態における各装置の少なくとも一部の機能を実現するソフトウェアを、フレキシブルディスク、CD-ROM(Compact Disc-Read Only Memory)、又はUSB(Universal Serial Bus)メモリ等の非一時的な記憶媒体(非一時的なコンピュータ可読媒体)に収納し、コンピュータに読み込ませることにより、ソフトウェアの情報処理を実行してもよい。また、通信ネットワークを介して当該ソフトウェアがダウンロードされてもよい。さらに、ソフトウェアがASIC(Application Specific Integrated Circuit)、又はFPGA(Field Programmable Gate Array)等の回路に実装されることにより、情報処理がハードウェアにより実行されてもよい。
(Hardware configuration of robot control circuit 72)
A part or all of each device (robot control circuit 72) in the above-described embodiment may be composed of hardware, or software executed by a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like. It may be composed of information processing of (program). When composed of software information processing, software that realizes at least a part of the functions of each device in the above-described embodiment is a flexible disk, CD-ROM (Compact Disc-Read Only Memory), or USB (Universal). Serial Bus) Software information processing may be executed by storing it in a non-temporary storage medium (non-temporary computer-readable medium) such as a memory and reading it into a computer. In addition, the software may be downloaded via a communication network. Further, information processing may be executed by hardware by mounting the software on a circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
 ソフトウェアを収納する記憶媒体の種類は限定されるものではない。記憶媒体は、磁気ディスク、又は光ディスク等の着脱可能なものに限定されず、ハードディスク、又はメモリ等の固定型の記憶媒体であってもよい。また、記憶媒体は、コンピュータ内部に備えられてもよいし、コンピュータ外部に備えられてもよい。 The type of storage medium that stores the software is not limited. The storage medium is not limited to a removable one such as a magnetic disk or an optical disk, and may be a fixed storage medium such as a hard disk or a memory. Further, the storage medium may be provided inside the computer or may be provided outside the computer.
 図21は、前述した実施形態における各装置(ロボット制御回路72)のハードウェア構成の一例を示すブロック図である。 FIG. 21 is a block diagram showing an example of the hardware configuration of each device (robot control circuit 72) in the above-described embodiment.
 各装置は、一例として、プロセッサ311(処理回路)と、主記憶装置312(メモリ)と、補助記憶装置313(メモリ)と、ネットワークインタフェース314と、デバイスインタフェース315と、を備え、これらがバス316を介して接続されたコンピュータ310として実現されてもよい。 As an example, each device includes a processor 311 (processing circuit), a main storage device 312 (memory), an auxiliary storage device 313 (memory), a network interface 314, and a device interface 315, which are bus 316. It may be realized as a computer 310 connected via.
 図21のコンピュータ310は、各構成要素を一つ備えているが、同じ構成要素を複数備えていてもよい。また、図21では、1台のコンピュータ310が示されているが、ソフトウェアが複数台のコンピュータにインストールされて、当該複数台のコンピュータそれぞれがソフトウェアの同一の又は異なる一部の処理を実行してもよい。この場合、コンピュータそれぞれがネットワークインタフェース314等を介して通信して処理を実行する分散コンピューティングの形態であってもよい。つまり、前述した実施形態における各装置(ロボット制御回路72)は、1又は複数の記憶装置に記憶された命令を1台又は複数台のコンピュータが実行することで機能を実現するシステムとして構成されてもよい。また、端末から送信された情報をクラウド上に設けられた1台又は複数台のコンピュータで処理し、この処理結果を端末に送信するような構成であってもよい。 The computer 310 in FIG. 21 includes one component for each component, but may include a plurality of the same components. Further, although one computer 310 is shown in FIG. 21, software is installed on a plurality of computers, and each of the plurality of computers executes the same or different part of the software. May be good. In this case, it may be a form of distributed computing in which each computer communicates via a network interface 314 or the like to execute processing. That is, each device (robot control circuit 72) in the above-described embodiment is configured as a system that realizes a function by executing instructions stored in one or a plurality of storage devices by one or a plurality of computers. May be good. Further, the information transmitted from the terminal may be processed by one or a plurality of computers provided on the cloud, and the processing result may be transmitted to the terminal.
 前述した実施形態における各装置(ロボット制御回路72)の各種演算は、1又は複数のプロセッサを用いて、又は、ネットワークを介した複数台のコンピュータを用いて、並列処理で実行されてもよい。また、各種演算が、プロセッサ内に複数ある演算コアに振り分けられて、並列処理で実行されてもよい。また、本開示の処理、手段等の一部又は全部は、ネットワークを介してコンピュータ310と通信可能なクラウド上に設けられたプロセッサ及び記憶装置の少なくとも一方により実行されてもよい。このように、前述した実施形態における各装置は、1台又は複数台のコンピュータによる並列コンピューティングの形態であってもよい。 Various operations of each device (robot control circuit 72) in the above-described embodiment may be executed in parallel processing by using one or a plurality of processors or by using a plurality of computers via a network. Further, various operations may be distributed to a plurality of arithmetic cores in the processor and executed in parallel processing. In addition, some or all of the processes, means, etc. of the present disclosure may be executed by at least one of a processor and a storage device provided on the cloud capable of communicating with the computer 310 via a network. As described above, each device in the above-described embodiment may be in the form of parallel computing by one or a plurality of computers.
 プロセッサ311は、コンピュータの制御装置及び演算装置を含む電子回路(処理回路、Processing circuit、Processing circuitry、CPU、GPU、FPGA、又はASIC等)であってもよい。また、プロセッサ311は、専用の処理回路を含む半導体装置等であってもよい。プロセッサ311は、電子論理素子を用いた電子回路に限定されるものではなく、光論理素子を用いた光回路により実現されてもよい。また、プロセッサ311は、量子コンピューティングに基づく演算機能を含むものであってもよい。 The processor 311 may be an electronic circuit (processing circuit, Processing circuit, Processing circuitry, CPU, GPU, FPGA, ASIC, etc.) including a computer control device and an arithmetic unit. Further, the processor 311 may be a semiconductor device or the like including a dedicated processing circuit. The processor 311 is not limited to an electronic circuit using an electronic logic element, and may be realized by an optical circuit using an optical logic element. Further, the processor 311 may include an arithmetic function based on quantum computing.
 プロセッサ311は、コンピュータ310の内部構成の各装置等から入力されたデータやソフトウェア(プログラム)に基づいて演算処理を行い、演算結果や制御信号を各装置等に出力することができる。 The processor 311 can perform arithmetic processing based on the data and software (program) input from each device or the like of the internal configuration of the computer 310, and output the arithmetic result or the control signal to each device or the like.
 前述した実施形態における各装置(ロボット制御回路72)は、1又は複数のプロセッサ311により実現されてもよい。ここで、プロセッサ311は、1チップ上に配置された1又は複数の電子回路を指してもよいし、2つ以上のチップあるいは2つ以上のデバイス上に配置された1又は複数の電子回路を指してもよい。複数の電子回路を用いる場合、各電子回路は有線又は無線により通信してもよい。 Each device (robot control circuit 72) in the above-described embodiment may be realized by one or a plurality of processors 311. Here, the processor 311 may refer to one or more electronic circuits arranged on one chip, or may refer to one or more electronic circuits arranged on two or more chips or two or more devices. You may point. When a plurality of electronic circuits are used, each electronic circuit may communicate by wire or wirelessly.
 主記憶装置312は、プロセッサ311が実行する命令及び各種データ等を記憶する記憶装置であり、主記憶装置312に記憶された情報がプロセッサ311により読み出される。補助記憶装置313は、主記憶装置312以外の記憶装置である。なお、これらの記憶装置は、電子情報を格納可能な任意の電子部品を意味するものとし、半導体のメモリでもよい。半導体のメモリは、揮発性メモリ、不揮発性メモリのいずれでもよい。前述した実施形態における各装置(ロボット制御回路72)において各種データを保存するための記憶装置は、主記憶装置312又は補助記憶装置313により実現されてもよく、プロセッサ311に内蔵される内蔵メモリにより実現されてもよい。 The main storage device 312 is a storage device that stores instructions executed by the processor 311 and various data and the like, and the information stored in the main storage device 312 is read out by the processor 311. The auxiliary storage device 313 is a storage device other than the main storage device 312. Note that these storage devices mean arbitrary electronic components capable of storing electronic information, and may be semiconductor memories. The semiconductor memory may be either a volatile memory or a non-volatile memory. The storage device for storing various data in each device (robot control circuit 72) in the above-described embodiment may be realized by the main storage device 312 or the auxiliary storage device 313, and may be realized by the built-in memory built in the processor 311. It may be realized.
 記憶装置(メモリ)1つに対して、複数のプロセッサが接続(結合)されてもよいし、単数のプロセッサが接続されてもよい。プロセッサ1つに対して、複数の記憶装置(メモリ)が接続(結合)されてもよい。前述した実施形態における各装置(ロボット制御回路72)が、少なくとも1つの記憶装置(メモリ)とこの少なくとも1つの記憶装置(メモリ)に接続(結合)される複数のプロセッサで構成される場合、複数のプロセッサのうち少なくとも1つのプロセッサが、少なくとも1つの記憶装置(メモリ)に接続(結合)される構成を含んでもよい。また、複数台のコンピュータに含まれる記憶装置(メモリ)とプロセッサによって、この構成が実現されてもよい。さらに、記憶装置(メモリ)がプロセッサと一体になっている構成(例えば、L1キャッシュ、L2キャッシュを含むキャッシュメモリ)を含んでもよい。 Multiple processors may be connected (combined) to one storage device (memory), or a single processor may be connected. A plurality of storage devices (memory) may be connected (combined) to one processor. When each device (robot control circuit 72) in the above-described embodiment is composed of at least one storage device (memory) and a plurality of processors connected (combined) to the at least one storage device (memory), there are a plurality of cases. A configuration in which at least one of the processors of the above is connected (combined) to at least one storage device (memory) may be included. Further, this configuration may be realized by a storage device (memory) and a processor included in a plurality of computers. Further, a configuration in which the storage device (memory) is integrated with the processor (for example, a cache memory including an L1 cache and an L2 cache) may be included.
 ネットワークインタフェース314は、無線又は有線により、通信ネットワークに接続するためのインタフェースである。ネットワークインタフェース314は、既存の通信規格に適合したもの等、適切なインタフェースを用いればよい。ネットワークインタフェース314により、通信ネットワークを介して接続された外部装置321と情報のやり取りが行われてもよい。なお、通信ネットワークは、WAN(Wide Area Network)、LAN(Local Area Network)、PAN(Personal Area Network)等の何れか、又は、それらの組み合わせであってよく、コンピュータ310と外部装置321との間で情報のやり取りが行われるものであればよい。WANの一例としてインターネット等があり、LANの一例としてIEEE802.11やイーサネット(登録商標)等があり、PANの一例としてBluetooth(登録商標)やNFC(Near Field Communication)等がある。 The network interface 314 is an interface for connecting to a communication network wirelessly or by wire. As the network interface 314, an appropriate interface such as one conforming to an existing communication standard may be used. Information may be exchanged with the external device 321 connected via the communication network by the network interface 314. The communication network may be any one of WAN (Wide Area Network), LAN (Local Area Network), PAN (Personal Area Network), or a combination thereof, and is between the computer 310 and the external device 321. It suffices as long as information is exchanged in. An example of WAN is the Internet, an example of LAN is IEEE802.11, Ethernet (registered trademark), etc., and an example of PAN is Bluetooth (registered trademark), NFC (Near Field Communication), etc.
 デバイスインタフェース315は、外部装置322と直接接続するUSB等のインタフェースである。 The device interface 315 is an interface such as USB that directly connects to the external device 322.
 外部装置321はコンピュータ310とネットワークを介して接続されている装置である。外部装置322はコンピュータ310と直接接続されている装置である。 The external device 321 is a device connected to the computer 310 via a network. The external device 322 is a device that is directly connected to the computer 310.
 外部装置321又は外部装置322は、一例として、入力装置であってもよい。入力装置は、例えば、カメラ、マイクロフォン、モーションキャプチャ、各種センサ、キーボード、マウス、又はタッチパネル等のデバイスであり、取得した情報をコンピュータ310に与える。また、パーソナルコンピュータ、タブレット端末、又はスマートフォン等の入力部とメモリとプロセッサを備えるデバイスであってもよい。 The external device 321 or the external device 322 may be an input device as an example. The input device is, for example, a device such as a camera, a microphone, a motion capture, various sensors, a keyboard, a mouse, or a touch panel, and gives the acquired information to the computer 310. Further, it may be a device including an input unit, a memory and a processor such as a personal computer, a tablet terminal, or a smartphone.
 また、外部装置321又は外部装置321は、一例として、出力装置でもよい。出力装置は、例えば、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)、PDP(Plasma Display Panel)、又は有機EL(Electro Luminescence)パネル等の表示装置であってもよいし、音声等を出力するスピーカ等であってもよい。また、パーソナルコンピュータ、タブレット端末、又はスマートフォン等の出力部とメモリとプロセッサを備えるデバイスであってもよい。 Further, the external device 321 or the external device 321 may be an output device as an example. The output device may be, for example, a display device such as an LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), a PDP (Plasma Display Panel), or an organic EL (Electro Luminescence) panel, and outputs audio or the like. It may be a speaker or the like. Further, it may be a device including an output unit such as a personal computer, a tablet terminal, or a smartphone, a memory, and a processor.
 また、外部装置321また外部装置322は、記憶装置(メモリ)であってもよい。例えば、外部装置321はネットワークストレージ等であってもよく、外部装置322はHDD等のストレージであってもよい。 Further, the external device 321 and the external device 322 may be a storage device (memory). For example, the external device 321 may be a network storage or the like, and the external device 322 may be a storage such as an HDD.
 また、外部装置321又は外部装置322は、前述した実施形態における各装置(ロボット制御回路72)の構成要素の一部の機能を有する装置でもよい。つまり、コンピュータ310は、外部装置321又は外部装置322の処理結果の一部又は全部を送信又は受信してもよい。 Further, the external device 321 or the external device 322 may be a device having some functions of the components of each device (robot control circuit 72) in the above-described embodiment. That is, the computer 310 may transmit or receive a part or all of the processing result of the external device 321 or the external device 322.
 本明細書(請求項を含む)において、「a、b及びcの少なくとも1つ(一方)」又は「a、b又はcの少なくとも1つ(一方)」の表現(同様な表現を含む)が用いられる場合は、a、b、c、a-b、a-c、b-c、又はa-b-cのいずれかを含む。また、a-a、a-b-b、a-a-b-b-c-c等のように、いずれかの要素について複数のインスタンスを含んでもよい。さらに、a-b-c-dのようにdを有する等、列挙された要素(a、b及びc)以外の他の要素を加えることも含む。 In the present specification (including claims), the expression (including similar expressions) of "at least one (one) of a, b and c" or "at least one (one) of a, b or c" is used. When used, it includes any of a, b, c, ab, ac, bc, or abc. It may also include multiple instances of any element, such as a-a, a-b-b, a-a-b-b-c-c, and the like. It also includes adding elements other than the listed elements (a, b and c), such as having d, such as a-b-c-d.
 本明細書(請求項を含む)において、「データを入力として/データに基づいて/に従って/に応じて」等の表現(同様な表現を含む)が用いられる場合は、特に断りがない場合、各種データそのものを入力として用いる場合や、各種データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、各種データの中間表現等)を入力として用いる場合を含む。また「データに基づいて/に従って/に応じて」何らかの結果が得られる旨が記載されている場合、当該データのみに基づいて当該結果が得られる場合を含むとともに、当該データ以外の他のデータ、要因、条件、及び/又は状態等にも影響を受けて当該結果が得られる場合をも含み得る。また、「データを出力する」旨が記載されている場合、特に断りがない場合、各種データそのものを出力として用いる場合や、各種データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、各種データの中間表現等)を出力とする場合も含む。 In the present specification (including claims), when expressions such as "with data as input / based on / according to / according to" (including similar expressions) are used, unless otherwise specified. This includes the case where various data itself is used as an input, and the case where various data are processed in some way (for example, noise-added data, normalized data, intermediate representation of various data, etc.) are used as input. In addition, when it is stated that some result can be obtained "based on / according to / according to the data", it includes the case where the result can be obtained based only on the data, and other data other than the data. It may also include cases where the result is obtained under the influence of factors, conditions, and / or conditions. In addition, when it is stated that "data is output", unless otherwise specified, various data itself is used as output, or various data is processed in some way (for example, noise is added, normal). It also includes the case where the output is output (intermediate representation of various data, etc.).
 本明細書(請求項を含む)において、「接続される(connected)」及び「結合される(coupled)」との用語が用いられる場合は、直接的な接続/結合、間接的な接続/結合、電気的(electrically)な接続/結合、通信的(communicatively)な接続/結合、機能的(operatively)な接続/結合、物理的(physically)な接続/結合等のいずれをも含む非限定的な用語として意図される。当該用語は、当該用語が用いられた文脈に応じて適宜解釈されるべきであるが、意図的に或いは当然に排除されるのではない接続/結合形態は、当該用語に含まれるものとして非限定的に解釈されるべきである。 In the present specification (including claims), when the terms "connected" and "coupled" are used, direct connection / coupling and indirect connection / coupling are used. , Electrically (electrically) connection / coupling, communication (communicatively) connection / coupling, functionally (operatively) connection / coupling, physical connection / coupling, etc. Intended as a term. The term should be interpreted as appropriate according to the context in which the term is used, but any connection / combination form that is not intentionally or naturally excluded is not limited to being included in the term. Should be interpreted as
 本明細書(請求項を含む)において、「AがBするよう構成される(A configured to B)」との表現が用いられる場合は、要素Aの物理的構造が、動作Bを実行可能な構成を有するとともに、要素Aの恒常的(permanent)又は一時的(temporary)な設定(setting/configuration)が、動作Bを実際に実行するように設定(configured/set)されていることを含んでよい。例えば、要素Aが汎用プロセッサである場合、当該プロセッサが動作Bを実行可能なハードウェア構成を有するとともに、恒常的(permanent)又は一時的(temporary)なプログラム(命令)の設定により、動作Bを実際に実行するように設定(configured)されていればよい。また、要素Aが専用プロセッサ又は専用演算回路等である場合、制御用命令及びデータが実際に付属しているか否かとは無関係に、当該プロセッサの回路的構造が動作Bを実際に実行するように構築(implemented)されていればよい。 When the expression "A configured to B" is used in the present specification (including claims), the physical structure of the element A can execute the operation B. Including that the element A has a configuration and the permanent or temporary setting (setting / configuration) of the element A is set (configured / set) to actually execute the operation B. Good. For example, when the element A is a general-purpose processor, the processor has a hardware configuration capable of executing the operation B, and the operation B is set by setting a permanent or temporary program (instruction). It suffices if it is configured to actually execute. Further, when the element A is a dedicated processor, a dedicated arithmetic circuit, or the like, the circuit structure of the processor actually executes the operation B regardless of whether or not the control instruction and data are actually attached. It only needs to be implemented.
 本明細書(請求項を含む)において、含有又は所有を意味する用語(例えば、「含む(comprising/including)」及び有する「(having)等)」が用いられる場合は、当該用語の目的語により示される対象物以外の物を含有又は所有する場合を含む、open-endedな用語として意図される。これらの含有又は所有を意味する用語の目的語が数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)である場合は、当該表現は特定の数に限定されないものとして解釈されるべきである。 In the present specification (including claims), when a term meaning inclusion or possession (for example, "comprising / including" and "having", etc.) is used, the object of the term is used. It is intended as an open-ended term, including the case of containing or owning an object other than the indicated object. If the object of these terms that mean inclusion or possession is an expression that does not specify a quantity or suggests a singular (an expression with a or an as an article), the expression is interpreted as not being limited to a specific number. It should be.
 本明細書(請求項を含む)において、ある箇所において「1つ又は複数(one or more)」又は「少なくとも1つ(at least one)」等の表現が用いられ、他の箇所において数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)が用いられているとしても、後者の表現が「1つ」を意味することを意図しない。一般に、数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)は、必ずしも特定の数に限定されないものとして解釈されるべきである。 In this specification (including claims), expressions such as "one or more" or "at least one" are used in some places, and the quantity is specified in other places. Even if expressions that do not or suggest the singular (expressions with a or an as an article) are used, the latter expression is not intended to mean "one". In general, expressions that do not specify a quantity or suggest a singular (expressions with a or an as an article) should be interpreted as not necessarily limited to a particular number.
 本明細書において、ある実施例の有する特定の構成について特定の効果(advantage/result)が得られる旨が記載されている場合、別段の理由がない限り、当該構成を有する他の1つ又は複数の実施例についても当該効果が得られると理解されるべきである。但し当該効果の有無は、一般に種々の要因、条件、及び/又は状態等に依存し、当該構成により必ず当該効果が得られるものではないと理解されるべきである。当該効果は、種々の要因、条件、及び/又は状態等が満たされたときに実施例に記載の当該構成により得られるものに過ぎず、当該構成又は類似の構成を規定したクレームに係る発明において、当該効果が必ずしも得られるものではない。 In the present specification, when it is stated that a specific effect (advantage / result) can be obtained for a specific configuration of an embodiment, unless there is a specific reason, one or more of the other configurations having the configuration. It should be understood that the effect can also be obtained in the examples of. However, it should be understood that the presence or absence of the effect generally depends on various factors, conditions, and / or states, etc., and that the effect cannot always be obtained by the configuration. The effect is merely obtained by the configuration described in the examples when various factors, conditions, and / or conditions are satisfied, and in the invention relating to the claim that defines the configuration or a similar configuration. , The effect is not always obtained.
 本明細書(請求項を含む)において、「最大化(maximize)」等の用語が用いられる場合は、グローバルな最大値を求めること、グローバルな最大値の近似値を求めること、ローカルな最大値を求めること、及びローカルな最大値の近似値を求めることを含み、当該用語が用いられた文脈に応じて適宜解釈されるべきである。また、これら最大値の近似値を確率的又はヒューリスティックに求めることを含む。同様に、「最小化(minimize)」等の用語が用いられる場合は、グローバルな最小値を求めること、グローバルな最小値の近似値を求めること、ローカルな最小値を求めること、及びローカルな最小値の近似値を求めることを含み、当該用語が用いられた文脈に応じて適宜解釈されるべきである。また、これら最小値の近似値を確率的又はヒューリスティックに求めることを含む。同様に、「最適化(optimize)」等の用語が用いられる場合は、グローバルな最適値を求めること、グローバルな最適値の近似値を求めること、ローカルな最適値を求めること、及びローカルな最適値の近似値を求めることを含み、当該用語が用いられた文脈に応じて適宜解釈されるべきである。また、これら最適値の近似値を確率的又はヒューリスティックに求めることを含む。 In the present specification (including claims), when terms such as "maximize" are used, the global maximum value is obtained, the approximate value of the global maximum value is obtained, and the local maximum value is obtained. Should be interpreted as appropriate according to the context in which the term was used, including finding an approximation of the local maximum. It also includes probabilistically or heuristically finding approximate values of these maximum values. Similarly, when terms such as "minimize" are used, find the global minimum, find the approximation of the global minimum, find the local minimum, and find the local minimum. It should be interpreted as appropriate according to the context in which the term was used, including finding an approximation of the value. It also includes probabilistically or heuristically finding approximate values of these minimum values. Similarly, when terms such as "optimize" are used, finding a global optimal value, finding an approximation of a global optimal value, finding a local optimal value, and local optimization It should be interpreted as appropriate according to the context in which the term was used, including finding an approximation of the value. It also includes probabilistically or heuristically finding approximate values of these optimal values.
 本明細書(請求項を含む)において、複数のハードウェアが所定の処理を行う場合、各ハードウェアが協働して所定の処理を行ってもよいし、一部のハードウェアが所定の処理の全てを行ってもよい。また、一部のハードウェアが所定の処理の一部を行い、別のハードウェアが所定の処理の残りを行ってもよい。本明細書(請求項を含む)において、「1又は複数のハードウェアが第1の処理を行い、前記1又は複数のハードウェアが第2の処理を行う」等の表現が用いられている場合、第1の処理を行うハードウェアと第2の処理を行うハードウェアは同じものであってもよいし、異なるものであってもよい。つまり、第1の処理を行うハードウェア及び第2の処理を行うハードウェアが、前記1又は複数のハードウェアに含まれていればよい。なお、ハードウェアは、電子回路、又は電子回路を含む装置等を含んでよい。 In the present specification (including claims), when a plurality of hardware performs a predetermined process, the respective hardware may cooperate to perform the predetermined process, or some hardware may perform the predetermined process. You may do all of the above. Further, some hardware may perform a part of a predetermined process, and another hardware may perform the rest of the predetermined process. In the present specification (including claims), when expressions such as "one or more hardware performs the first process and the one or more hardware performs the second process" are used. , The hardware that performs the first process and the hardware that performs the second process may be the same or different. That is, the hardware that performs the first process and the hardware that performs the second process may be included in the one or more hardware. The hardware may include an electronic circuit, a device including the electronic circuit, or the like.
 本明細書(請求項を含む)において、複数の記憶装置(メモリ)がデータの記憶を行う場合、複数の記憶装置(メモリ)のうち個々の記憶装置(メモリ)は、データの一部のみを記憶してもよいし、データの全体を記憶してもよい。 In the present specification (including claims), when a plurality of storage devices (memory) store data, each storage device (memory) among the plurality of storage devices (memory) stores only a part of the data. It may be stored or the entire data may be stored.
 以上、本開示の実施形態について詳述したが、本開示は上記した個々の実施形態に限定されるものではない。請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲において種々の追加、変更、置き換え及び部分的削除等が可能である。例えば、前述した全ての実施形態において、数値又は数式を説明に用いている場合は、一例として示したものであり、これらに限られるものではない。また、実施形態における各動作の順序は、一例として示したものであり、これらに限られるものではない。 Although the embodiments of the present disclosure have been described in detail above, the present disclosure is not limited to the individual embodiments described above. Various additions, changes, replacements, partial deletions, etc. are possible without departing from the conceptual idea and purpose of the present invention derived from the contents specified in the claims and their equivalents. For example, in all the above-described embodiments, when numerical values or mathematical formulas are used for explanation, they are shown as examples, and the present invention is not limited thereto. Further, the order of each operation in the embodiment is shown as an example, and is not limited to these.

Claims (16)

  1.  エンドエフェクタを取り付け可能なアームと、
     少なくとも1つのプロセッサと、を備え、
     前記少なくとも1つのプロセッサは、前記エンドエフェクタが前記アームに取り付けられた場合、
      前記エンドエフェクタから識別情報を取得することと、
      前記識別情報に基づき、前記エンドエフェクタをモデル化したエンドエフェクタモデルを特定することと、
      前記エンドエフェクタモデルに基づき、少なくとも前記アームの制御に用いられるロボットモデルを更新することと、
      前記更新されたロボットモデルに基づき、前記アームを制御することと、
     を実行するよう構成される、
     ロボット。
    An arm to which an end effector can be attached and
    With at least one processor,
    The at least one processor, when the end effector is attached to the arm,
    Obtaining identification information from the end effector and
    Identifying an end effector model that models the end effector based on the identification information, and
    Based on the end effector model, at least updating the robot model used to control the arm, and
    Controlling the arm based on the updated robot model
    Is configured to run,
    robot.
  2.  前記少なくとも1つのプロセッサは、さらに、前記更新されたロボットモデルに基づき、前記エンドエフェクタの経路情報を生成する、
     請求項1に記載のロボット。
    The at least one processor further generates route information for the end effector based on the updated robot model.
    The robot according to claim 1.
  3.  前記少なくとも1つのプロセッサは、さらに、
      前記エンドエフェクタの目標情報を取得し、
      前記エンドエフェクタの自己情報を推定し、
     前記少なくとも1つのプロセッサは、前記目標情報、前記自己情報および前記更新されたロボットモデルに基づき、前記経路情報を生成する、
     請求項2に記載のロボット。
    The at least one processor further
    Acquire the target information of the end effector,
    Estimate the self-information of the end effector
    The at least one processor generates the route information based on the target information, the self-information and the updated robot model.
    The robot according to claim 2.
  4.  前記目標情報は、少なくとも、前記エンドエフェクタの目標位置又は目標姿勢のいずれか1つを含み、
     前記自己情報は、少なくとも、前記エンドエフェクタの位置又は姿勢のいずれか1つを含む、
     請求項3に記載のロボット。
    The target information includes at least one of the target position and the target posture of the end effector.
    The self-information includes at least one of the positions or orientations of the end effector.
    The robot according to claim 3.
  5.  前記少なくとも1つのプロセッサは、さらに、
      前記アームの周囲の物体に関する情報を生成し、
      前記目標情報、前記自己情報、前記物体に関する情報および前記更新されたロボットモデルに基づき、前記経路情報を生成する、
     請求項3又は4に記載のロボット。
    The at least one processor further
    Generates information about objects around the arm
    The route information is generated based on the target information, the self-information, the information about the object, and the updated robot model.
    The robot according to claim 3 or 4.
  6.  前記アームは、前記アームに作用する力成分およびトルク成分を検出する力覚センサを有し、
     前記少なくとも1つのプロセッサは、さらに、
      前記力覚センサにより検知されたセンサ情報に基づき、前記エンドエフェクタの慣性パラメータを算出し、
      算出された前記慣性パラメータに基づき、前記ロボットモデルを更新する、
     請求項1から5の何れか1項に記載のロボット。
    The arm has a force sensor that detects a force component and a torque component acting on the arm.
    The at least one processor further
    Based on the sensor information detected by the force sensor, the inertial parameters of the end effector are calculated.
    The robot model is updated based on the calculated inertial parameters.
    The robot according to any one of claims 1 to 5.
  7.  前記慣性パラメータは、前記エンドエフェクタの重心位置、質量、又は慣性モーメントの少なくとも1つを含む、
     請求項6に記載のロボット。
    The inertial parameter includes at least one of the centroid position, mass, or moment of inertia of the end effector.
    The robot according to claim 6.
  8.  前記少なくとも1つのプロセッサは、さらに、
      オペレーティングシステムを実行することにより、前記ロボットモデルを管理し、前記アームを制御する、
     請求項1から7の何れか1項に記載のロボット。
    The at least one processor further
    By running an operating system, it manages the robot model and controls the arm.
    The robot according to any one of claims 1 to 7.
  9.  前記少なくとも1つのプロセッサは、さらに、
      複数の前記エンドエフェクタのそれぞれに対応する1つ以上のアプリケーションプログラムを管理し、
      前記エンドエフェクタが前記アームに取り付けられた場合、前記エンドエフェクタに対応する1つ以上のアプリケーションプログラムを選択する、
     請求項1から8の何れか1項に記載のロボット。
    The at least one processor further
    Manages one or more application programs corresponding to each of the plurality of end effectors,
    When the end effector is attached to the arm, one or more application programs corresponding to the end effector are selected.
    The robot according to any one of claims 1 to 8.
  10.  前記少なくとも1つのプロセッサは、さらに、
      前記エンドエフェクタが前記アームに取り付けられた場合、前記エンドエフェクタに対応する1つ以上のアプリケーションプログラムを提示し、
      ユーザからの指定に基づいて、前記アーム及び前記エンドエフェクタの制御に用いる1つ以上のアプリケーションプログラムを選択する、
     請求項1から8の何れか1項に記載のロボット。
    The at least one processor further
    When the end effector is attached to the arm, one or more application programs corresponding to the end effector are presented.
    One or more application programs used to control the arm and the end effector are selected based on the user's specifications.
    The robot according to any one of claims 1 to 8.
  11.  前記少なくとも1つのプロセッサは、さらに、
      前記アームに取り付けられた前記エンドエフェクタをモデル化したエンドエフェクタモデル、又は、前記エンドエフェクタに対応するアプリケーションプログラムの少なくとも1つを、外部装置から受信する、
     請求項1から10の何れか1項に記載のロボット。
    The at least one processor further
    An end effector model that models the end effector attached to the arm, or at least one of application programs corresponding to the end effector is received from an external device.
    The robot according to any one of claims 1 to 10.
  12.  前記エンドエフェクタモデルは、少なくとも、前記エンドエフェクタの質量、重心位置、形状、物体を識別するための情報、又は、前記エンドエフェクタを制御するための情報の何れか1つを含む、
     請求項1から11の何れか1項に記載のロボット。
    The end effector model includes at least one of information for identifying the mass, center of gravity position, shape, and object of the end effector, or information for controlling the end effector.
    The robot according to any one of claims 1 to 11.
  13.  前記ロボットモデルは、前記ロボットを構成する複数のリンクの形状、質量、重心位置、物理特性、前記ロボットに含まれる関節部に関する動作特性、又は、前記アームをモデル化したデータの何れか1つを含む、
     請求項1から12の何れか1項に記載のロボット。
    The robot model includes any one of the shape, mass, center of gravity position, physical characteristics, motion characteristics of joints included in the robot, and data modeling the arm of a plurality of links constituting the robot. Including,
    The robot according to any one of claims 1 to 12.
  14.  前記少なくとも1つのプロセッサは、さらに、
      前記エンドエフェクタの識別情報を認証する、
     請求項1から13の何れか1項に記載のロボット。
    The at least one processor further
    Authenticate the identification information of the end effector,
    The robot according to any one of claims 1 to 13.
  15.  エンドエフェクタを取り付け可能なアームを備えるロボットを制御する制御方法であって、
     前記エンドエフェクタが前記アームに取り付けられた場合、
      前記エンドエフェクタから識別情報を取得することと、
      前記識別情報に基づき、前記エンドエフェクタをモデル化したエンドエフェクタモデルを特定することと、
      前記エンドエフェクタモデルに基づき、少なくとも前記アームの制御に用いられるロボットモデルを更新することと、
      前記更新されたロボットモデルに基づき、前記アームを制御することと、
     を実行する制御方法。
    A control method that controls a robot equipped with an arm to which an end effector can be attached.
    When the end effector is attached to the arm,
    Obtaining identification information from the end effector and
    Identifying an end effector model that models the end effector based on the identification information, and
    Based on the end effector model, at least updating the robot model used to control the arm, and
    Controlling the arm based on the updated robot model
    Control method to execute.
  16.  少なくとも1台のコンピュータを、エンドエフェクタを取り付け可能なアームを備えるロボットを制御する装置として機能させるためのプログラムであって、
     前記エンドエフェクタが前記アームに取り付けられた場合、前記少なくとも1台のコンピュータに、
      前記エンドエフェクタから識別情報を取得することと、
      前記識別情報に基づき、前記エンドエフェクタをモデル化したエンドエフェクタモデルを特定することと、
      前記エンドエフェクタモデルに基づき、少なくとも前記アームの制御に用いられるロボットモデルを更新することと、
      前記更新されたロボットモデルに基づき、前記アームを制御することと、
     を実行させるためのプログラム。
    A program for making at least one computer function as a device for controlling a robot having an arm to which an end effector can be attached.
    When the end effector is attached to the arm, the at least one computer
    Obtaining identification information from the end effector and
    Identifying an end effector model that models the end effector based on the identification information, and
    Based on the end effector model, at least updating the robot model used to control the arm, and
    Controlling the arm based on the updated robot model
    A program to execute.
PCT/JP2020/047564 2019-12-25 2020-12-18 Robot, control method, and program WO2021132107A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-235260 2019-12-25
JP2019235260 2019-12-25

Publications (1)

Publication Number Publication Date
WO2021132107A1 true WO2021132107A1 (en) 2021-07-01

Family

ID=76574154

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/047564 WO2021132107A1 (en) 2019-12-25 2020-12-18 Robot, control method, and program

Country Status (1)

Country Link
WO (1) WO2021132107A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023053174A1 (en) * 2021-09-28 2023-04-06 ヤマハ発動機株式会社 Robot system, robot device, robot controller, end effector, and end effector control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06315881A (en) * 1993-05-07 1994-11-15 Hitachi Constr Mach Co Ltd Force control device for force control working machine
JP2002036155A (en) * 2000-07-25 2002-02-05 Denso Corp End effector of robot
JP2012040634A (en) * 2010-08-18 2012-03-01 Ihi Corp Calibration device and method for power-controlled robot
JP2017177294A (en) * 2016-03-31 2017-10-05 キヤノン株式会社 Robot control device, robot control method, robot system and computer program
JP2018065233A (en) * 2016-10-21 2018-04-26 セイコーエプソン株式会社 Robot control device, robot, and robot system
US20180257221A1 (en) * 2015-08-24 2018-09-13 Calvin Toothaker Quick-release mechanism for tool adapter plate and robots incorporating the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06315881A (en) * 1993-05-07 1994-11-15 Hitachi Constr Mach Co Ltd Force control device for force control working machine
JP2002036155A (en) * 2000-07-25 2002-02-05 Denso Corp End effector of robot
JP2012040634A (en) * 2010-08-18 2012-03-01 Ihi Corp Calibration device and method for power-controlled robot
US20180257221A1 (en) * 2015-08-24 2018-09-13 Calvin Toothaker Quick-release mechanism for tool adapter plate and robots incorporating the same
JP2017177294A (en) * 2016-03-31 2017-10-05 キヤノン株式会社 Robot control device, robot control method, robot system and computer program
JP2018065233A (en) * 2016-10-21 2018-04-26 セイコーエプソン株式会社 Robot control device, robot, and robot system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023053174A1 (en) * 2021-09-28 2023-04-06 ヤマハ発動機株式会社 Robot system, robot device, robot controller, end effector, and end effector control method

Similar Documents

Publication Publication Date Title
JP6329218B2 (en) Robot with end effector to be hot-plugged
KR102235167B1 (en) A realtime device control system based on steps, an appratus for controlling a device system, and a method for controlling a device system based on steps
EP2661311B1 (en) Self-propelled device with actively engaged drive system
EP2998079B1 (en) Image processing apparatus, robot system and method for processing an image
KR102619004B1 (en) Robot control apparatus and method for learning task skill of the robot
EP1315087A1 (en) Communication device and communication method, network system, and robot apparatus
Millard et al. The Pi-puck extension board: a Raspberry Pi interface for the e-puck robot platform
EP3568268A2 (en) Improvements related to generating a robot control policy from demonstrations collected via kinesthetic teaching of a robot
JP6959703B2 (en) Virtual reality headset stand
WO2021132107A1 (en) Robot, control method, and program
JP2018008347A (en) Robot system and operation region display method
JP6950192B2 (en) Information processing equipment, information processing systems and programs
JP2018051647A (en) Robot control device, robot and robot system
JP2013066962A (en) Robot control device, and robot system
US20220075454A1 (en) Data replacement apparatus, terminal, and data replacement program
KR102543596B1 (en) An electronic device and a method for caculating at least one parameter for measuring an external force
WO2020032211A1 (en) Data generating device, data generating method, data generating program, and remote operation system
JP2018190363A (en) Portable mobile robot and operation method thereof
US20210178578A1 (en) Information processing apparatus, information processing method, computer program, and program manufacturing method
US20240033950A1 (en) Manual operation of a remote robot assembly
JP5659787B2 (en) Operation environment model construction system and operation environment model construction method
WO2020032249A1 (en) Information processing device, mediation device, simulate system, and information processing method
JPWO2019171693A1 (en) Information processing equipment, information processing methods, and programs
WO2021125019A1 (en) Information system, information processing method, information processing program and robot system
JP2015145050A (en) Robot system, robot control device, robot control method and robot control program

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP