Robot control system, robot control method, and program

The robot control system uses cooperative first and second robots with suction devices to stabilize and transport amorphous objects by accurately identifying their shape and position, ensuring stable transport.

JP2025003066AActive Publication Date: 2025-01-09YASKAWA DENKI KK

Patent Information

Application Number
JP2023103529
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-06-23
Publication Date
2025-01-09
Estimated Expiration
2043-06-23

AI Technical Summary

Technical Problem

Existing technologies struggle to stably support and transport amorphous objects with irregular shapes, as they often lose balance during transportation due to their unpredictable form and flexibility.

Method used

A robot control system comprising a first and second robot, each equipped with suction devices, that cooperatively support and transport amorphous objects by identifying their shape and position, and synchronizing their movements to maintain stability.

Benefits of technology

The system effectively stabilizes the transport of amorphous objects by ensuring they are securely sandwiched and supported, reducing the likelihood of imbalance or falling during movement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025003066000001_ABST
    Figure 2025003066000001_ABST
Patent Text Reader

Abstract

To support and convey an unshaped material in a state of being placed in a predetermined place, in a stable state.SOLUTION: A robot control system (1) includes a first robot (30) and a second robot (40). A first robot control part (101) controls the first robot (30) so that the first robot (30) supports a part of an unshaped material (OB) placed in a predetermined place. A second robot control part (102) controls the second robot (40) so that the second robot (40) supports a part different from the part of the unshaped material and conveys the unshaped material (OB), in cooperation with the first robot (30).SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a robot control system, a robot control method, and a program. [Background technology]

[0002] For example, Patent Document 1 describes a manipulator device that includes a base, a plurality of tip arms connected to the base and capable of supporting an object at their tips, a driving means for changing the position and attitude of the tip arms relative to the base, and a control means for controlling the position and attitude of the object by controlling the driving means. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2011-062788 A Summary of the Invention [Problem to be solved by the invention]

[0004] One object of the present disclosure is, for example, to stably support and transport an irregular object placed in a predetermined location. [Means for solving the problem]

[0005] A robot control system according to one aspect of the present disclosure includes a first robot, a second robot, a first robot control unit that controls the first robot so that the first robot supports a portion of an amorphous object placed at a predetermined location, and a second robot control unit that controls the second robot so that the second robot cooperates with the first robot to support a portion of the amorphous object that is different from the portion and transport the amorphous object. Effect of the Invention

[0006] According to the present disclosure, for example, an irregular object placed in a predetermined location can be stably supported and transported. [Brief description of the drawings]

[0007] [Figure 1] FIG. 2 is a diagram illustrating an example of a hardware configuration of a robot control system. [Diagram 2] FIG. 2 is a diagram showing an example of a space in which a first robot controller, a second robot controller, a first robot, and a second robot are arranged. [Diagram 3] FIG. 1 is a diagram illustrating an example of a shooting position. [Figure 4] 5A to 5C are diagrams illustrating an example of the operation of the first robot and the second robot. [Diagram 5] 5A to 5C are diagrams illustrating an example of the operation of the first robot and the second robot. [Figure 6] 5A to 5C are diagrams illustrating an example of the operation of the first robot and the second robot. [Figure 7] FIG. 2 is a diagram illustrating an example of functions realized by the robot control system. [Figure 8] FIG. 4 is a diagram showing an example of a movement path of a first robot and a second robot. [Figure 9] FIG. 2 is a diagram illustrating an example of a process executed in the robot control system. [Figure 10] FIG. 13 is a diagram illustrating an example of functions realized by a robot control system according to a modified example. [Figure 11] FIG. 13 is a diagram illustrating an example of a hardware configuration of a robot control system in Modification 1. [Figure 12] FIG. 4 is a diagram showing an example of a first support position and a second support position according to the center of gravity. [Figure 13] 11 is a diagram showing an example of a state in which each of the first suction device and the second suction device sucks an irregular object OB in a direction according to the irregular object. FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] [1.Hardware configuration of the robot control system] An example of an embodiment of a robot control system, a robot control method, and a program according to the present disclosure will be described. Fig. 1 is a diagram showing an example of a hardware configuration of a robot control system. For example, the robot control system 1 includes a first robot controller 10, a second robot controller 20, a first robot 30, and a second robot 40.

[0009] The first robot controller 10 is a device that controls the first robot 30. The first robot controller 10 is connected to the first robot 30 by a cable such as a power line or a signal line. The first robot controller 10 is communicatively connected to the second robot controller 20 by a network such as an industrial network or a LAN. For example, the first robot controller 10 includes a CPU 11, a storage unit 12, and a communication unit 13.

[0010] For example, the CPU 11 includes at least one processor. The storage unit 12 includes at least one of a volatile memory and a non-volatile memory. The communication unit 13 includes at least one of a communication interface for wired communication and a communication interface for wireless communication. The first robot controller 10 also includes other hardware such as a power supply unit for supplying power to at least one motor included in the first robot 30.

[0011] The second robot controller 20 is a device that controls the second robot 40. The second robot controller 20 is connected to the second robot 40 by a cable such as a power line or a signal line. The second robot controller 20 is communicatively connected to the first robot controller 10 by a network such as an industrial network or a LAN. Note that a master-slave relationship may exist between the first robot controller 10 and the second robot controller 20. For example, the first robot controller 10 may operate based on an instruction from the second robot controller 20. Conversely, the second robot controller 20 may operate based on an instruction from the first robot controller 10.

[0012] For example, the second robot controller 20 includes a CPU 21, a storage unit 22, and a communication unit 23. The hardware configurations of the CPU 21, the storage unit 22, and the communication unit 23 may be similar to those of the CPU 11, the storage unit 12, and the communication unit 13, respectively. The second robot controller 20 also includes other hardware such as a power supply unit for supplying power to at least one motor included in the second robot 40.

[0013] The first robot 30 is a device including at least one motor controlled by the first robot controller 10. In this embodiment, the first robot 30 is a vertical articulated robot, but the first robot 30 may be of any type and is not limited to a vertical articulated robot. For example, the first robot 30 may be a horizontal articulated robot, a parallel link robot, or an orthogonal robot. The first robot 30 may have any number of axes, for example, any of 4 to 7 axes.

[0014] For example, the first robot 30 includes at least one first suction device 31. In the present embodiment, the first suction device 31 is a suction device, but the first suction device 31 may be any device capable of suctioning an object, and is not limited to a suction device. For example, the first suction device 31 may be a robot hand with a suction cup, a device that suctions an object by magnetic force, or a device that suctions an object by electrostatic force. The first robot 30 may support an object by an end effector that does not have a suction function, without including the first suction device 31. For example, the first robot 30 may support an object by a robot hand or a plate that does not have a suction function.

[0015] For example, the first suction device 31 is a suction device including a suction cup (suction cup) that contacts an object and a pump for suction. The first suction device 31 uses the pump to create a vacuum state between the suction cup and the object that the suction cup touches. Note that the first suction device 31 may be any type of suction device and is not limited to a suction device including a suction cup. For example, the first suction device 31 may be a mat-shaped suction device instead of a suction cup, or may be a suction device called a vacuum gripper.

[0016] For example, the first robot 30 includes at least one camera 32. The camera 32 may also be called a vision sensor. In this embodiment, the camera 32 is described as a 3D camera, but the camera 32 may be of any type and is not limited to a 3D camera. For example, the camera 32 may be a 2D camera (a camera without a depth sensor) or an infrared camera. The camera 32 may continuously capture images at a predetermined frame rate to generate a video, or may generate still images without continuously capturing images.

[0017] The second robot 40 is a device including at least one motor controlled by the second robot controller 20. In this embodiment, the second robot 40 is a vertical articulated robot, but the second robot 40 may be of any type, similar to the first robot 30. The second robot 40 may have any number of axes, similar to the first robot 30. The second robot 40 is a robot physically independent from the first robot 30.

[0018] For example, the second robot 40 includes at least one second suction device 41. The hardware configuration of the second suction device 41 may be the same as that of the first suction device 31. In the present embodiment, the first suction device 31 and the second suction device 41 are both suction devices, but the first suction device 31 and the second suction device 41 may be different types of devices. For example, the first suction device 31 may be a suction device, and the second suction device 41 may be a robot hand without a suction function. For example, the first suction device 31 may be a robot hand without a suction function, and the second suction device 41 may be a suction device.

[0019] At least one of the first robot 30 and the second robot 40 may include a suction device that sucks the irregular object. The suction device of the at least one robot may be a suction device that sucks the irregular object, or may be another suction device as described above. For example, the first robot 30 may have the first suction device 31, and the second robot 40 may have an end effector that does not have a suction function without having the second suction device 41. The first robot 30 may have an end effector that does not have a suction function without having the first suction device 31, and the second robot 40 may have the second suction device 41. Hereinafter, when the first suction device 31 and the second suction device 41 are not distinguished from each other, they may be simply referred to as suction devices.

[0020] The program or data stored in the storage unit 12 may be supplied to the first robot controller 10 via a network such as an industrial network, the Internet, or a LAN. The program or data stored in the storage unit 22 may be supplied to the second robot controller 20 via the network. For example, at least one of the first robot controller 10 and the second robot controller 20 may include at least one of a reading unit (e.g., a memory card slot) that reads a computer-readable information storage medium and an input / output unit (e.g., a USB terminal) for connecting to an external device. The program or data stored in the computer-readable information storage medium may be supplied to at least one of the first robot controller 10 and the second robot controller 20 via the reading unit or the input / output unit.

[0021] In addition, various hardware can be applied to the first robot controller 10, the second robot controller 20, the first robot 30, and the second robot 40. The hardware configurations of the first robot controller 10, the second robot controller 20, the first robot 30, and the second robot 40 are not limited to the above example. For example, at least one of the first robot controller 10 and the second robot controller 20 may include a circuit such as an FPGA or an ASIC. In this embodiment, a case will be described in which the CPUs 11 and 21 correspond to a configuration called a circuitry, but other circuits such as an FPGA or an ASIC may correspond to the circuitry.

[0022] In addition, the devices included in the robot control system 1 are not limited to the example in FIG. 1. The robot control system 1 may include any devices. For example, the robot control system 1 may include a host controller that controls the first robot controller 10 and the second robot controller 20. For example, the robot control system 1 may include sensors such as a motor encoder, a torque sensor, a position sensor, an acceleration sensor, a gyro sensor, a pressure sensor, or a contact sensor. These sensors may be connected to at least one of the first robot controller 10 and the second robot controller 20, or may be included in at least one of the first robot 30 and the second robot 40. The second robot 40 may include a camera similar to the camera 32.

[0023] Also, the first robot 30 and the second robot 40 may be controlled by one robot controller. For example, the first robot controller 10 may control the first robot 30 and the second robot 40. In this case, the robot control system 1 does not include the second robot controller 20. Conversely, the second robot controller 20 may control the first robot 30 and the second robot 40. In this case, the robot control system 1 does not include the first robot controller 10. The robot control system 1 may include at least one of a robot controller other than the first robot controller 10 and the second robot controller 20 and a robot other than the first robot 30 and the second robot 40.

[0024] [2. Overview of the robot control system] 2 is a diagram showing an example of a space in which the first robot controller 10, the second robot controller 20, the first robot 30, and the second robot 40 are arranged. For example, the first robot controller 10, the second robot controller 20, the first robot 30, and the second robot 40 are arranged in a facility such as a factory. In this embodiment, the first robot 30 and the second robot 40 support an irregular object OB placed on a workbench T so as to sandwich the irregular object OB therebetween.

[0025] The shapeless object OB is an object that does not have a fixed shape. The shapeless object OB can also be called a flexible object. The shape of the shapeless object OB is easily changed. When a certain amount of force is applied to the shapeless object OB, the shape of the shapeless object OB changes. For example, the shapeless object OB is an object placed in a bag or covered with cushioning material. The bag or cushioning material is also part of the shapeless object OB. The shapeless object OB may be placed anywhere other than the workbench T. For example, the shapeless object OB may be placed on the floor, the ground, a transport robot, a shelf, packaging material, or other locations.

[0026] In this embodiment, a case will be described in which a plastic bag filled with contents corresponds to the irregular object OB, but the irregular object OB may be any object and is not limited to a plastic bag. For example, the irregular object OB may be a vinyl bag filled with contents, an aluminum-deposited bag, a paper bag, a burlap bag, a flexi-con bag, an infusion bag, or other bags. For example, the irregular object OB may contain raw materials or ingredients for a product produced in a factory as its contents.

[0027] For example, the irregular object OB is packed in a packing material such as a cardboard box. The first robot controller 10 controls the first robot 30 so that the first robot 30 cuts the packing material with a cutter blade. The second robot controller 20 controls the second robot 40 so that the second robot 40 fixes the packing material. When cutting of the packing material is completed, at least a part of the packing material is removed. At least one of the end effectors of the first robot 30 and the second robot 40 is detachable. Note that the packing material may be opened by an operator instead of the first robot 30 and the second robot 40.

[0028] For example, an irregular object OB is placed on a work table T arranged between the first robot 30 and the second robot 40. When the opening of the irregular object OB is secured by tape or the like, the opening of the irregular object OB may be opened by the first robot 30, the second robot 40, another robot, or an operator. In the example of FIG. 2, the irregular object OB is placed on the work table T with its opening facing upward. A storage container C for storing the contents of the irregular object OB is arranged near the work table T.

[0029] For example, the first robot 30 and the second robot 40 sandwich and support the amorphous object OB with an opening, and transport the amorphous object OB above the storage container C. The first robot 30 and the second robot 40 rotate the amorphous object OB so that the opening of the amorphous object OB faces downward, and drop the contents of the amorphous object OB into the storage container C. The first robot controller 10 and the second robot controller 20 synchronize with each other and control the first robot 30 and the second robot 40 which perform this series of operations.

[0030] In this embodiment, the first robot controller 10 controls the first robot 30 so that the first robot 30 photographs the irregular object OB with the camera 32 in order to identify the position of the irregular object OB and the overall shape of the irregular object OB. The photographing by the camera 32 is performed before the irregular object OB is transported by the first robot 30 and the second robot 40. In this embodiment, the irregular object OB is photographed from each of a plurality of predetermined photographing positions.

[0031] Fig. 3 is a diagram showing an example of a shooting position. For example, the first robot controller 10 specifies a position in real space in a coordinate system in which an X10 axis, a Y10 axis, and a Z10 axis are set around an origin O10 corresponding to a base on which the first robot 30 is placed. The coordinate system may be any coordinate system used in robot control, and is not limited to the example of Fig. 3. For example, a coordinate system may be set for each axis of the first robot 30.

[0032] In the example of FIG. 3, an image capturing position FP1 on the upper side of the irregular object OB and an image capturing position FP2 on the side of the irregular object OB are determined in advance. An image capturing direction FD1 in the negative direction of the Z10 axis is determined for the image capturing position FP1. An image capturing direction FD2 in the positive direction of the X10 axis is determined for the image capturing position FP2. For example, the first robot controller 10 controls the first robot 30 so that the camera 32 captures an image of the irregular object OB from the image capturing position FP1 in the image capturing direction FD1. Thereafter, the first robot controller 10 controls the first robot 30 so that the camera 32 captures an image of the irregular object OB from the image capturing position FP2 in the image capturing direction FD2.

[0033] The combination of the photographing positions and the photographing directions is not limited to two as shown in FIG. 3. The combination of the photographing positions and the photographing directions may be one or three or more. For example, the first robot controller 10 may control the first robot 30 so that the camera 32 moves around the irregular object OB and photographs the irregular object OB evenly. The combination of the photographing positions and the photographing directions does not have to be determined in advance. For example, the first robot controller 10 may decide the combination of the photographing positions and the photographing directions on the spot based on the photographed image generated by the camera 32.

[0034] For example, the first robot controller 10 analyzes the captured image generated by the camera 32 and identifies the position and shape of the irregular object OB. Any method used in the image processing field can be used as the method of identification. For example, the first robot controller 10 may identify the shape of the irregular object OB based on a machine learning method such as a neural network, or a pattern of feature points extracted from the captured image. The first robot controller 10 determines the support position of the irregular object OB based on the position and shape of the irregular object OB.

[0035] For example, the first robot controller 10 transmits amorphous object data indicating the position of the amorphous object OB and the shape of the amorphous object OB to the second robot controller 20. The amorphous object data may be in any format that can express the three-dimensional position of the object and the three-dimensional shape of the object. For example, the amorphous object data may be in a format adopted in 3D-CAD software. The amorphous object data may be point cloud data indicating the surface of the amorphous object OB, or data indicating the contour line of the surface of the amorphous object OB. The second robot controller 20 receives the amorphous object data from the first robot controller 10.

[0036] For example, when the amorphous object data is expressed in a coordinate system based on the first robot 30, the second robot controller 20 converts the amorphous object data into a coordinate system based on the second robot 40. In the example of FIG. 3, the second robot controller 20 converts the coordinates shown in the amorphous object data into a coordinate system in which the X20 axis, the Y20 axis, and the Z20 axis are set with the origin O20 corresponding to the base on which the second robot 40 is placed as the center. The second robot controller 20 specifies the relative positional relationship between the first robot 30 and the second robot 40 in advance, and stores information (e.g., a matrix) for the coordinate conversion in the storage unit 22 in advance. The conversion of the coordinate system may be performed by the first robot controller 10.

[0037] For example, the first robot controller 10 determines a first support position where the first suction device 31 supports the irregular object OB based on the irregular object data. The first support position is a position where the first suction device 31 touches the irregular object OB. The first robot controller 10 controls the first robot 30 so that the first suction device 31 moves to the first support position. The second robot controller 20 determines a second support position where the second suction device 41 supports the irregular object OB based on the irregular object data. The second support position is a position where the second suction device 41 touches the irregular object OB. The second robot controller 20 controls the second robot 40 so that the second suction device 41 moves to the second support position.

[0038] 4 to 6 are diagrams showing an example of the operation of the first robot 30 and the second robot 40. In FIGS. 4 to 6, only the vicinity of the tip (the vicinity of the first suction device 31 and the second suction device 41) of the first robot 30 and the second robot 40 is shown. The reference character P10 in FIG. 4 indicates a first initial position which is the initial position of the first robot 30. The reference character P20 indicates a second initial position which is the initial position of the second robot 40. The first initial position P10 and the second initial position P20 may be positions determined in advance. Note that the storage container C is omitted in FIG. 4 and the upper side of FIG. 5.

[0039] For example, as shown in the upper part of FIG. 4, the first robot controller 10 controls the orientation of the first suction device 31 so that the suction cup of the first suction device 31 faces the irregular object OB at the first initial position P10. The first robot controller 10 controls the first robot 30 so that the first suction device 31 approaches the first support position P11 from the first initial position P10. The second robot controller 20 controls the orientation of the second suction device 41 so that the suction cup of the second suction device 41 faces the irregular object OB at the second initial position P20. The second robot controller 20 controls the second robot 40 so that the second suction device 41 approaches the second support position P21 from the second initial position P20.

[0040] 4, the first robot controller 10 controls the first robot 30 so that the first suction device 31 moves to the first support position P11, and when the first suction device 31 adsorbs the irregular object OB with a certain degree of suction pressure, the first suction device 31 stops moving. The second robot controller 20 controls the second robot 40 so that the second suction device 41 moves to the second support position P21, and when the second suction device 41 adsorbs the irregular object OB with a certain degree of suction pressure, the second suction device 41 stops moving. Through this series of operations, the irregular object OB is sandwiched between the first robot 30 and the second robot 40.

[0041] Thereafter, the first robot controller 10 and the second robot controller 20 synchronize with each other and control the first robot 30 and the second robot 40 so that the amorphous object OB is transported above the storage container C. For example, as shown in the upper part of FIG. 5, the first robot controller 10 controls the first robot 30 so that the first robot 30 transports the amorphous object OB in an upward direction. The second robot controller 20 controls the second robot 40 so that the second robot 40 transports the amorphous object OB in an upward direction. For example, as shown in the lower part of FIG. 5, the first robot controller 10 controls the first robot 30 so that the first robot 30 transports the amorphous object OB above the storage container C. The second robot controller 20 controls the second robot 40 so that the second robot 40 transports the amorphous object OB above the storage container C.

[0042] For example, as shown in the upper part of Fig. 6, the first robot controller 10 controls the first robot 30 so that the first robot 30 stops moving when the amorphous object OB moves above the storage container C. The second robot controller 20 controls the second robot 40 so that the second robot 40 stops moving when the amorphous object OB moves above the storage container C. Thereafter, the first robot controller 10 controls the first robot 30 so that the first suction device 31 rotates. The second robot controller 20 controls the second robot 40 so that the second suction device 41 rotates.

[0043] For example, as shown in the lower part of FIG. 6, when the first suction device 31 and the second suction device 41 rotate, the contents of the irregular object OB fall into the storage container C. When the contents start to fall into the storage container C, the irregular object OB is deformed. The first robot controller 10 controls the first robot 30 so that the first suction device 31 stops suction when the contents of the irregular object OB have completely fallen into the storage container C. The second robot controller 20 controls the second robot 40 so that the second suction device 41 stops suction after the contents of the irregular object OB have completely fallen into the storage container C. The irregular object OB (e.g., only a plastic bag) from which the contents have been discharged is placed in another location.

[0044] For example, the first robot 30 and the second robot 40 perform a similar flow of operations each time the next irregular object OB is placed on the worktable T. In the robot control system 1 of this embodiment, the first robot 30 and the second robot 40 support and transport the irregular object OB placed on the worktable T, thereby enabling the robot control system 1 to transport the irregular object OB in a stable state. Details of the robot control system 1 will be described below.

[0045] [3. Functions realized by the robot control system] FIG. 7 is a diagram illustrating an example of functions realized by the robot control system 1. As shown in FIG.

[0046] [3-1. Functions realized by the first robot controller] For example, the first robot controller 10 includes a first data storage unit 100 and a first robot control unit 101. The first data storage unit 100 is realized by the storage unit 12. The first robot control unit 101 is realized by the CPU 11.

[0047] [First data storage unit] The first data storage unit 100 stores data necessary for the first robot controller 10 to control the first robot 30. For example, the first data storage unit 100 stores a program including code (commands) indicating the control content of the first robot 30. The program can be written in any language, and may be written in, for example, a robot language or ladder language. The code may be any code that is adopted in these languages. For example, the program includes at least one of code for moving the first robot 30 and code for changing the orientation (posture) of the first robot 30.

[0048] For example, the first data storage unit 100 stores a shape recognition program for the first robot controller 10 to recognize the shape of the irregular object OB based on the captured image generated by the camera 32. The shape recognition program includes code for recognizing the shape of the irregular object OB based on the captured image generated by the camera 32. For example, if the surface of the irregular object OB is curved, the shape of the curved surface is also identified by the shape recognition program.

[0049] The shape recognition program may be a program used in known object detection. In this embodiment, since the camera 32 is a 3D camera, the shape recognition program includes a code for recognizing the shape of the irregular object OB based on an image captured by the 3D camera (an image including the depth between the camera 32 and the subject). For example, the shape recognition program identifies the three-dimensional shape of the irregular object OB based on a plurality of images captured by the camera 32. Furthermore, if the position and shape of the irregular object OB are the same each time, the process for recognizing the position and shape of the irregular object OB may be omitted.

[0050] For example, the first data storage unit 100 stores a first robot control program showing a series of operations in which the first robot 30 supports and transports an irregular object OB. The first robot control program includes code for determining a first support position P11 at which the first suction device 31 supports the irregular object OB based on the shape of the irregular object OB. The first robot control program includes code for determining the center point or its vicinity (for example, a position within a predetermined distance from the center point) of the side surface of the irregular object OB that is on the first robot 30 side as the first support position P11 of the first robot 30. The first robot control program includes code for calculating a path from the first initial position P10 of the first robot 30 to the determined first support position P11.

[0051] FIG. 8 is a diagram showing an example of the movement paths of the first robot 30 and the second robot 40. The symbol MP1 in FIG. 8 is a first movement path which is the movement path of the first robot 30. The symbol MP2 is a second movement path which is the movement path of the second robot 40. The algorithm for calculating the first movement path MP1 may use any algorithm in robot control. For example, the first robot control program may include a code for calculating a movement path based on linear interpolation, circular interpolation, or spline interpolation. In this embodiment, the first robot control program includes a code for an operation of the first robot 30 to rotate the first suction device 31 in addition to the code indicating these algorithms.

[0052] For example, the first robot control program includes a code for moving the first suction device 31 to a first initial position P10. The first initial position P10 is assumed to be designated in advance by a user of the robot control system 1. The first robot control program includes a code for moving the first suction device 31 from the first initial position P10 to a first support position P11. The first robot control program includes a code for moving the first suction device 31 from the first support position P11 to a first target position P12. The first target position P12 may be any position determined in advance. For example, the first target position P12 is a position above the storage vessel C. The first robot control program includes a code for rotating the first suction device 31 at the first target position P12.

[0053] For example, the first robot control program includes code for controlling the orientation of the first suction device 31 at each position. The orientation of the first suction device 31 at the first initial position P10 may be any orientation, and the suction cup of the first suction device 31 may be oriented toward the side of the irregular object OB until the first suction device 31 arrives at the first support position P11. For example, the first robot control program includes code for controlling the orientation of the first suction device 31 so that the first suction device 31 adheres to the first support position P11 corresponding to the center of gravity of the irregular object OB. For example, the horizontal position of the first support position P11 may be the same as the horizontal position of the center of gravity of the irregular object OB. The vertical position of the first support position P11 may be lower than the vertical position of the center of gravity of the irregular object OB. In this embodiment, the orientation of the first suction holder 31 after the first support position P11 is kept constant during the transport of the amorphous object OB, but code for changing the orientation of the first suction holder 31 after the first support position P11 may be included in the first robot control program.

[0054] For example, the first robot control program may include at least one of a code for controlling on / off of suction by the first suction device 31 and a code for changing the suction force (adsorption force) of the first suction device 31. For example, the first robot control program includes a code for turning on suction by the first suction device 31 until the first suction device 31 arrives at the first support position P11 or after the first suction device 31 arrives at the first support position P11. The first robot control program includes a code for turning off suction by the first suction device 31 after the first suction device 31 arrives at the first target position P12 and the contents of the irregular object OB are dropped into the storage container C. The series of operations described above is defined in the first robot control program.

[0055] The data stored in the first data storage unit 100 is not limited to the above example. For example, the first data storage unit 100 may store other programs other than the shape recognition program and the first robot control program. Furthermore, the data stored in the first data storage unit 100 is not limited to the program. For example, the first data storage unit 100 may store first movement path data indicating the first movement path MP1. When the first robot controller 10 calculates the second movement path MP2, the first data storage unit 100 may store second movement path data indicating the second movement path MP2. For example, the first data storage unit 100 may store parameters referenced by the above program. The parameters may be any parameters used in robot control, and may be, for example, position parameters indicating the position of the motor in the first robot 30, or values ​​detected by various sensors such as a torque sensor.

[0056] [First robot control unit] The first robot control unit 101 controls the first robot 30 based on the program and parameters stored in the first data storage unit 100. The first robot control unit 101 controls the first robot 30 so that the first robot 30 supports a part of the irregular object OB placed on the workbench T. The part is a part of the irregular object OB that the first robot 30 touches. For example, the part is a part of the irregular object OB that the first suction device 31 touches. In this embodiment, supporting is a concept that includes suction, sucking, and gripping.

[0057] The workbench T is an example of a predetermined location. Therefore, the description of the workbench T can be read as a predetermined location. As described above, the irregular object OB may be placed at any location other than the workbench T. Therefore, the predetermined location is not limited to the workbench T. The first robot control unit 101 controls the first robot 30 so that the first robot 30 supports and transports a part of the irregular object OB. In this embodiment, the operations of the first robot controller 10 and the second robot controller 20 are synchronized with each other, so that the first robot control unit 101 controls the first robot 30 so that the first robot 30 cooperates with the second robot 40 to support and transport a part of the irregular object OB.

[0058] For example, the first robot control unit 101 controls the first robot 30 based on a shape recognition program and a first robot control program. The first robot control unit 101 executes the shape recognition program and recognizes the position and shape of the irregular object OB. The first robot control unit 101 generates irregular object data indicating the position and shape of the irregular object OB and records it in the first data storage unit 100. The first robot control unit 101 transmits the irregular object data to the second robot controller 20. Note that the irregular object data may be generated by another device such as a PLC (Programmable Logic Controller) or a vision controller and transmitted from the other device to each of the first robot controller 10 and the second robot controller 20.

[0059] For example, the first robot control unit 101 determines the first movement path MP1 and the orientation of the first suction device 31 on the first movement path MP1 based on the irregular object data and the first robot control program. The first robot control unit 101 acquires the on / off timing of the first suction device 31 designated in advance. The first robot control unit 101 may turn on the first suction device 31 at the timing when the first suction device 31 comes into contact with the irregular object OB or after the first suction device 31 comes into contact with the irregular object OB (for example, after the first suction device 31 stops and a predetermined time has elapsed). The first robot control unit 101 controls the first robot 30 so that the first suction device 31 moves on the calculated first movement path MP1 in the calculated orientation and the suction by the first suction device 31 is turned on / off at the calculated timing.

[0060] For example, the first robot control unit 101 includes a first clamping control unit 102. The first clamping control unit 102 controls the first robot 30 so that the first robot 30 clamps and supports the irregular object OB between the first robot 30 and the second robot 40. The first clamping control unit 102 controls the first robot 30 so that the first robot 30 applies force to the irregular object OB in a direction opposite to the direction in which the second robot 30 applies force to the irregular object OB (in the example of FIG. 8, the direction from the second initial position P20 to the second support position P21). Note that the opposite direction here does not necessarily mean the exact opposite direction, and a slight deviation from the exact opposite direction may be allowed.

[0061] In this embodiment, the first support position P11 is determined to be the opposite side of the second support position P21 on the amorphous object OB. Therefore, the first clamping control unit 102 calculates the first support position P11 to be the opposite side of the second support position P21, and moves the first suction device 31 to the calculated first support position P11, thereby causing the first robot 30 to support the amorphous object OB by clamping it between the first robot 30 and the second robot 40. The flow of the transfer thereafter is as described above. Note that the first support position P11 and the second support position P21 are shared between the first robot controller 10 and the second robot controller 20.

[0062] The first robot control unit 101 may not include the first clamping control unit 102. For example, the first robot control unit 101 controls the first robot 30 so that the first robot 30 moves to the first support position P11 before the second robot 40 touches the irregular object OB. The irregular object OB may be clamped by the first robot 30 and the second robot 40 under the control of a second clamping control unit 202 described later. The first robot control unit 101 may control the first robot 30 so that the first robot 30 operates regardless of the operation of the second robot 40. That is, the first robot control unit 101 does not need to control the first robot 30 so that the first robot 30 cooperates with the second robot 40.

[0063] [3-2. Functions realized by the second robot controller] For example, the second robot controller 20 includes a second data storage unit 200 and a second robot control unit 201. The second data storage unit 200 is realized by the storage unit 22. The second robot control unit 201 is realized by the CPU 21.

[0064] [Second data storage unit] The second data storage unit 200 stores data necessary for the second robot controller 20 to control the second robot 40. For example, the second data storage unit 200 stores a program including code (commands) indicating the control content of the second robot 40. The program can be written in any language, and may be written in, for example, a robot language or ladder language. The code may be any code that is adopted in these languages. For example, the program includes at least one of code for moving the second robot 40 and code for changing the orientation (posture) of the second robot 40.

[0065] For example, the second data storage unit 200 stores a second robot control program showing a series of operations in which the second robot 40 supports and transports the irregular object OB. The second robot control program includes code for determining a second support position P21 at which the second suction device 41 supports the irregular object OB based on the shape of the irregular object OB. The second robot control program includes code for determining the center point or its vicinity (for example, a position within a predetermined distance from the center point) of the side surface of the irregular object OB that is on the second robot 40 side as the second support position P21 of the second robot 40. The second robot control program includes code for calculating a path from the second initial position P20 of the second robot 40 to the determined second support position P21.

[0066] For example, the algorithm for calculating the second movement path MP2 may be any algorithm in robot control. The second robot control program may include a code for calculating a movement path based on linear interpolation, circular interpolation, or spline interpolation. In this embodiment, the second robot control program includes a code for an operation of the second robot 40 to rotate the second suction device 41, in addition to the code representing these algorithms. The second movement path MP2 may be calculated by the first robot controller 20. In this case, the first robot control program includes the above code for calculating the second movement path MP2.

[0067] For example, the second robot control program includes a code for moving the second suction device 41 to a second initial position P20. The second initial position P20 is assumed to be designated in advance by a user of the robot control system 1. The second robot control program includes a code for moving the second suction device 41 from the second initial position P20 to the second support position P21. The second robot control program includes a code for moving the second suction device 41 from the second support position P21 to the second target position P22. The second target position P22 may be any position determined in advance. For example, the second target position P22 is a position above the storage vessel C. The second robot control program includes a code for rotating the second suction device 41 at the second target position P22.

[0068] For example, the second robot control program includes code for controlling the orientation of the second suction device 41 at each position. The orientation of the second suction device 41 at the second initial position P20 may be any orientation, and the suction cup of the second suction device 41 may be oriented toward the side of the irregular object OB until the second suction device 41 arrives at the second support position P21. For example, the second robot control program includes code for controlling the orientation of the second suction device 41 so that the second suction device 41 adheres to the second support position P21 corresponding to the center of gravity of the irregular object OB. For example, the horizontal position of the second support position P21 may be the same as the horizontal position of the center of gravity of the irregular object OB. The vertical position of the second support position P21 may be lower than the vertical position of the center of gravity of the irregular object OB. In this embodiment, the orientation of the second suction device 41 after the first support position P11 is kept constant during the transport of the amorphous object OB, but code for changing the orientation of the second suction device 41 after the first support position P11 may be included in the second robot control program.

[0069] For example, the second robot control program may include at least one of a code for controlling on / off of suction by the second suction device 41 and a code for changing the suction force (adsorption force) of the second suction device 41. For example, the second robot control program includes a code for turning on suction by the second suction device 41 before the second suction device 41 arrives at the second support position P21. The second robot control program includes a code for turning off suction by the second suction device 41 after the second suction device 41 arrives at the second target position P22 and the contents of the irregular object OB are dropped into the storage container C. The series of operations described above is defined in the second robot control program.

[0070] The data stored in the second data storage unit 200 is not limited to the above example. For example, the second data storage unit 200 may store a program other than the second robot control program. Furthermore, the data stored in the second data storage unit 200 is not limited to a program. For example, the second data storage unit 200 may store second movement path data indicating the second movement path MP2. For example, the second data storage unit 200 may store parameters referenced by the above program. The parameters may be any parameters used in robot control, and may be, for example, position parameters indicating the position of a motor in the second robot 40, or values ​​detected by various sensors such as a torque sensor.

[0071] [Second robot control unit] The second robot control unit 201 controls the second robot 40 based on the program and parameters stored in the second data storage unit 200. The second robot control unit 201 controls the second robot 40 so that the second robot 40 cooperates with the first robot 30 to support a portion of the irregular object OB that is different from the portion (the portion described in the processing of the first robot control unit 101) and transport the irregular object OB.

[0072] The part different from the part of the amorphous object OB is the part of the amorphous object OB that the second robot 40 touches. In this embodiment, the different part is the part of the amorphous object OB that the second suction device 41 touches. The different part is a part other than the part supported by the first robot 30. For example, the different part is a part of the amorphous object OB on the opposite side to the part supported by the first robot 30. The different part is not limited to the opposite part, and may be another part. For example, the different part may be a side surface adjacent to the side surface of the amorphous object OB supported by the first robot 30. That is, the first robot 30 and the second robot 40 do not sandwich the amorphous object OB, but the second robot 40 may support the side surface adjacent to the side surface on which the first robot 30 supports the amorphous object OB.

[0073] For example, the second robot control unit 201 controls the second robot 40 based on the amorphous object data received from the first robot controller 10 and the second robot control program. The second robot control unit 201 converts the position and shape of the amorphous object OB indicated by the amorphous object data received from the first robot controller 10 into coordinates based on the second robot 40. The second robot control unit 201 records the converted amorphous object data in the second data storage unit 200. When the first robot controller 10 calculates the second movement path MP2, the second robot controller 20 receives the second movement path data from the first robot controller 10. The second robot control unit 201 controls the second robot 40 based on the second movement path data received from the first robot controller 10.

[0074] For example, the second robot control unit 201 determines the second movement path MP2 and the orientation of the second suction device 41 on the second movement path MP2 based on the coordinate-converted amorphous object data and the second robot control program. The on / off timing of the second suction device 41 may be designated in advance. For example, the second robot control unit 201 acquires the on / off timing of the second suction device 41 designated in advance. The second robot control unit 201 may turn on the second suction device 41 at the timing when the second suction device 41 comes into contact with the amorphous object OB or after the second suction device 41 comes into contact with the amorphous object OB (for example, after a predetermined time has elapsed since the second suction device 41 stopped). The second robot control unit 201 controls the second robot 40 so that the second suction device 41 moves on the calculated second movement path MP2 in the calculated orientation and the suction by the second suction device 41 is turned on / off at the calculated timing.

[0075] For example, the second robot control unit 201 may calculate the second movement path MP2 based on the coordinate-converted amorphous object data, the first movement path data indicating the first movement path MP, and the second robot control program. The first movement path data is appropriately transmitted from the first robot controller 10 to the second robot controller 20. For example, the second robot control unit 201 specifies the thickness d of the amorphous object OB based on the amorphous object data. The second robot control unit 201 specifies the first support position P11 based on the first movement path data. The second robot control unit 201 determines a position away from the first support position P11 by the thickness d on the opposite side of the amorphous object OB as viewed from the first support position P11 as the second support position P21.

[0076] For example, the second robot control unit 201 determines, from among the first movement path MP indicated by the first movement path data, a path that is separated by the thickness d from the path from the first supporting position P11 to the first target position P12 as the path from the second supporting position P21 to the second target position P22. The second robot control unit 201 determines, as the second movement path MP2, a path that is a combination of the path from the second initial position P20 to the second supporting position P21 and the path from the second supporting position P21 to the second target position P22.

[0077] The first movement path data may indicate the movement speed of the first robot 30. The second robot control unit 201 specifies the movement speed of the first robot 30 from the first support position P11 to the first target position P12 based on the first movement path data. The second robot control unit 201 may determine the movement speed of the second robot 40 from the second support position P21 to the second target position P22 so that the arrival time of the second robot 40 at the second target position P22 and the arrival time of the first robot 10 at the first target position P12 are the same. The second robot control unit 201 may determine the movement speed of the second robot 40 so that the movement speed of the second robot 40 from the second support position P21 to the second target position P22 is the same as the movement speed of the first robot 30 from the first support position P11 to the first target position P12.

[0078] The first movement path data may also indicate the rotation direction and rotation speed of the first sucker 31 at the first target position P12. The second robot control unit 201 specifies the rotation direction and rotation speed of the first sucker 31 at the first target position P12 based on the first movement path data. The second robot control unit 201 may determine the rotation speed of the second sucker 41 at the second target position P22 so that the rotation speed of the second sucker 41 at the second target position P22 is the same as the rotation speed of the first sucker 31 at the first target position P12. Note that the rotation direction of the first sucker 31 as viewed from the first robot 30 is opposite to the rotation direction of the second sucker 41 as viewed from the second robot 40.

[0079] The first robot controller 10 may calculate the second movement path MP2 instead of the second robot controller 20. In this case, a code similar to the code for calculating the second movement path MP2 in the second robot control program may be included in the first robot control program or another program. The first robot controller 10 calculates the second movement path MP2 based on the first robot control program or another program. The first robot controller 10 determines the movement speed of the second robot 40 and the rotation direction and rotation speed of the second suction device 41 at the second target position P22.

[0080] For example, the first robot controller 10 transmits second movement path data indicating the second movement path MP2, the movement speed of the second robot 40, and the rotation direction and rotation speed of the second suction device 41 at the second target position P22 to the second robot controller 20. The second robot controller 20 receives the second movement path data. The second robot control unit 201 may control the second robot 40 based on the second movement path data generated by the first robot controller 10. Conversely to the above, the second robot controller 20 may calculate the first movement path MP1, etc., and transmit data indicating the calculation results of the first movement path MP1, etc. to the first robot controller 10.

[0081] When the first robot 30 supports the irregular object OB at the first support position P11 (when the first suction holder 31 has completed suction of the irregular object OB), the first robot controller 10 transmits to the second robot controller 20 a first support completion notification indicating that the support by the first robot 30 has been completed. When the second robot 40 supports the irregular object OB at the second support position P21 (when the second suction holder 41 has completed suction of the irregular object OB), the second robot controller 20 transmits to the first robot controller 10 a second support completion notification indicating that the support by the second robot 40 has been completed.

[0082] Thereafter, the first robot controller 10 and the second robot controller 20 synchronize their operations, so that the first robot 30 and the second robot 40 move along the first movement path MP1 and the second movement path MP2, respectively. For example, the second robot control unit 201 controls the movement of the second robot 40 so that the relative positional relationship between the first suction device 31 and the second suction device 41 is kept constant. Similarly, the first robot control unit 101 controls the movement of the first robot 30 so that the relative positional relationship between the first suction device 31 and the second suction device 41 is kept constant.

[0083] For example, the second robot control unit 201 includes a second clamping control unit 202. The second clamping control unit 202 controls the second robot 40 so that the second robot 40 supports the amorphous object OB by clamping it between the second robot 40 and the first robot 30. In this embodiment, the second support position P21 is determined to be the opposite side of the first support position P11 on the amorphous object OB. For this reason, the second clamping control unit 202 calculates the second support position P21 to be the opposite side of the first support position P11, and moves the second suction device 41 to the calculated second support position P21, thereby causing the second robot 40 to support the amorphous object OB by clamping it between the second robot 40 and the second robot 40. The flow of the transfer thereafter is as described above.

[0084] The first robot controller 10 and the second robot controller 20 may share the first support position P11 and the second support position P21. When the second robot 40 moves to the second support position P21, the second clamping control unit 202 may detect the suction force of the first robot 30 and the second robot 40 on the irregular object OB by a sensor that detects the suction force, and may move the second robot 40 further toward the irregular object OB based on the suction force. After the first robot controller 10 and the second robot controller 20 share the information that the clamping of the irregular object OB has been completed, the movement from the first support position P11 to the second support position P21 onward is controlled.

[0085] The second robot control unit 201 may not include the second clamping control unit 202. In this case, the second robot control unit 201 may control the second robot 40 so that the second robot 40 moves to the first support position P11 before the first robot 30 touches the irregular object OB. The irregular object OB may be clamped by the first robot 30 and the second robot 40 under the control of the second clamping control unit 202. As described above, the irregular object OB does not have to be clamped by the first robot 30 and the second robot 40.

[0086] [4. Processing performed by the robot control system] Fig. 9 is a diagram showing an example of processing executed by the robot control system 1. The processing of Fig. 9 is executed by the CPUs 11, 21 executing a program stored in the storage units 12, 22. The processing of Fig. 9 is executed after the unpacking of the packaging material that packs the irregular object OB is completed. The fact that the packaging material has been unpacked can be detected by any method, and for example, in the case where the first robot 30 cuts the packaging material, the processing of Fig. 9 is executed after the cutting operation by the first robot 30 is completed and at least a part of the packaging material is removed.

[0087] 9, the first robot controller 10 controls the first robot 30 so that the first robot 30 captures an image of an irregular object OB with the camera 32 (S1). The first robot controller 10 recognizes the position and shape of the irregular object OB based on the captured image generated by the camera 32 and a shape recognition program (S2). The first robot controller 10 calculates a first movement path MP1 based on the position and shape of the irregular object OB recognized in S2 and the robot control program (S3).

[0088] The first robot controller 10 calculates a second movement path MP2 based on the position and shape of the irregular object OB recognized in S2 and the first robot control program (S4). In S4, the first robot controller 10 converts the coordinates of the irregular object data into coordinates based on the second robot 40, and calculates the second movement path MP2 based on the converted irregular object data, the first movement path data, and the first robot control program. The first robot controller 10 transmits second movement path data indicating the second movement path MP2 calculated in S4 to the second robot controller 20 (S5). In S5, the first robot controller 10 may also transmit the irregular object data. The second robot controller 20 receives the second movement path data from the first robot controller 10 (S6). In S6, the second robot controller 20 may also receive the irregular object data.

[0089] The first robot controller 10 controls the first robot 30 so that the first robot 30 supports and transports a part of the irregular object OB based on the first movement path MP1 calculated in S3 (S7). The second robot controller 20 controls the second robot 40 so that the second robot 40 supports and transports a part of the irregular object OB other than the part supported by the first robot 30 based on the second movement path MP2 indicated by the second movement path data received in S6 (S8). In the processes of S7 and S8, the first robot controller 10 and the second robot controller 20 communicate with each other and control the first robot 30 and the second robot 40 so that the first robot 30 and the second robot 40 transport the irregular object OB in synchronization with each other. In the subsequent processes of S9 to S12, the first robot controller 10 and the second robot controller 20 also communicate with each other and synchronize the operations of the first robot 30 and the second robot 40.

[0090] When the irregular object OB moves above the storage container C, the first robot controller 10 rotates the first suction device 31 so that the opening of the irregular object OB faces downward (S9). When the irregular object OB moves above the storage container C, the second robot controller 20 rotates the second suction device 41 so that the opening of the irregular object OB faces downward (S10). Through the processes of S9 and S10, the contents of the irregular object OB fall into the storage container C. The first robot controller 10 controls the first robot 30 to stop suction by the first suction device 31 (S11). After that, the first robot 30 moves to the first initial position P10. The second robot controller 20 controls the second robot 40 so that the second robot 40 discards the irregular object OB (S12), and this process ends. After that, the second robot 40 moves to the second initial position P20.

[0091] [5. Summary of the embodiment] The robot control system 1 of this embodiment controls the first robot 30 so that the first robot 30 supports a part of the irregular object OB placed at a predetermined location. The robot control system 1 controls the second robot 40 so that the second robot 40 cooperates with the first robot 30 to support a part of the irregular object OB that is different from the part and transports the irregular object OB. Since the second robot 40 cooperates with the first robot 30 to support and transport the irregular object OB placed at a predetermined location, the robot control system 1 can support and transport the irregular object OB in a stable state. For example, if the irregular object OB is supported and transported by only one robot, there is a possibility that the irregular object OB may fall or lose its balance during transportation, but since the first robot 30 and the second robot 40 support and transport the irregular object OB, the possibility that the irregular object OB may fall or lose its balance during transportation can be reduced.

[0092] Furthermore, the robot control system 1 controls the second robot 40 so that the second robot 40 supports the irregular object OB by sandwiching it between the first robot 30 and the second robot 40. Since the irregular object OB is sandwiched between the first robot 30 and the second robot 40, the robot control system 1 can support the irregular object OB in a more stable state.

[0093] In addition, at least one of the first robot 30 and the second robot 40 has a suction device that adsorbs the irregular object OB. The robot control system 1 can support the irregular object OB in a more stable state by using the suction device that adsorbs the irregular object OB. For example, in the present embodiment, when the first robot 30 has the first suction device 31 and the second robot 40 has the second suction device 41, the possibility that the irregular object OB will fall or lose balance during transportation can be further reduced.

[0094] Furthermore, the suction device of at least one of the first robot 30 and the second robot 40 is a suction machine that sucks up the irregular object OB. The robot control system 1 can support the irregular object OB in a more stable state by using the suction machine that sucks up the irregular object OB. For example, when both the first robot 30 and the second robot 40 have suction machines as in this embodiment, the possibility that the irregular object OB will fall or lose balance during transportation can be further reduced.

[0095] [6. Modifications] The present disclosure is not limited to the above-described embodiments. The present disclosure can be modified as appropriate without departing from the spirit and scope of the present disclosure.

[0096] 10 is a diagram showing an example of functions realized by the robot control system 1 of the modified example. For example, the first robot controller 10 includes a first suction pressure acquisition unit 103, a first forward movement control unit 104, a second suction pressure acquisition unit 105, a first speed control unit 106, a first start control unit 107, a first suction force control unit 108, a first type identification unit 109, a first center of gravity identification unit 110, a first support position support unit 111, a first size identification unit 112, a first size position support unit 113, a first attitude control unit 114, a first orientation control unit 115, and a first subsequent process position control unit 116. Each of these functions is realized by the CPU 11.

[0097] For example, the second robot controller 20 includes a second suction pressure acquisition unit 203, a second forward movement control unit 204, a first suction pressure acquisition unit 205, a second speed control unit 206, a position control unit 207, a second start control unit 208, a second suction force control unit 209, a second type identification unit 210, a second center of gravity identification unit 211, a second support position support unit 212, a second size identification unit 213, a second size position support unit 214, a second attitude control unit 215, a second orientation control unit 216, and a second subsequent process position control unit 217. Each of these functions is realized by the CPU 21.

[0098] [6-1. Variation 1] For example, at least one of the first robot 30 and the second robot 40 may have an adhesion pressure detector that detects the adhesion pressure of the suction device. In the first modification, a case will be described in which both the first robot 30 and the second robot 40 have an adhesion pressure detector, but only one of the first robot 30 and the second robot 40 may have an adhesion pressure detector.

[0099] FIG. 11 is a diagram showing an example of a hardware configuration of the robot control system 1 in the first modification. As shown in FIG. 11, the first robot 30 includes a first suction pressure detector 33 that detects a first suction pressure, which is the suction pressure of the first suction device 31. For example, the first suction pressure detector 33 is a pressure sensor. When the first suction device 31 is a suction device, the first suction pressure detector 33 may be a vacuum gauge. The first suction pressure detector 33 is disposed in the first suction device 31. That is, the first suction pressure detector 33 is disposed at the tip of the first robot 30.

[0100] For example, the second robot 40 includes a second suction pressure detector 42 that detects a second suction pressure that is a suction pressure of the second suction device 41. The hardware configuration of the second suction pressure detector 42 may be similar to that of the first suction pressure detector 33. The second suction pressure detector 42 is disposed in the second suction device 41. That is, the second suction pressure detector 42 is disposed at the tip of the second robot 40. Hereinafter, when there is no need to distinguish between the first suction pressure detector 33 and the second suction pressure detector 42, they will be simply referred to as suction pressure detectors. Similarly, when there is no need to distinguish between the first suction device 31 and the second suction device 41, they will be simply referred to as suction devices.

[0101] The first robot controller 10 of the first modification includes a first suction pressure acquisition unit 103 and a first forward control unit 104. The second robot controller 20 includes a second suction pressure acquisition unit 203 and a second forward control unit 204. The first suction pressure acquisition unit 103 and the second suction pressure acquisition unit 203 are examples of an suction pressure acquisition unit that acquires suction pressure. The robot control system 1 of the first modification includes two suction pressure acquisition units.

[0102] The first forward control unit 104 and the second forward control unit 204 are an example of a forward control unit that controls at least one of the robots having an adsorption pressure detector so that the sucker advances toward the irregular object OB until the adsorption pressure becomes equal to or greater than a threshold value. The robot control system 1 of the first modification includes two forward control units. That is, in the first modification, the first robot 30 includes the first adsorption pressure detector 33, and the second robot 40 includes the second adsorption pressure detector 42, so that the robot control system 1 includes the first forward control unit 104 and the second forward control unit 204.

[0103] In addition, if the first robot 30 includes the first suction pressure detector 33 and the second robot 40 does not include the second suction pressure detector 42, the robot control system 1 may not include the second forward control unit 204. In this case, the first forward control unit 104 corresponds to the forward control unit. In the case where the first robot 30 does not include the first suction pressure detector 33 and the second robot 40 includes the second suction pressure detector 42, the robot control system 1 may not include the first forward control unit 104. In this case, the second forward control unit 204 corresponds to the forward control unit.

[0104] For example, the first suction pressure acquisition unit 103 acquires the first suction pressure detected by the first suction pressure detector 33. The first forward movement control unit 104 controls the first robot 30 so that the first suction holder 31 advances toward the irregular object OB until the first suction pressure becomes equal to or greater than a first threshold. The first forward movement control unit 104 repeatedly determines whether the first suction pressure has become equal to or greater than the first threshold. The first threshold may be any value determined in advance, or may be specified by the user.

[0105] For example, when the first forward control unit 104 determines that the first suction pressure is less than the first threshold value, it controls the first robot 30 so that the first suction device 31 moves from the first initial position P10 in the direction toward the first support position P11 (so that the first robot 30 moves forward while maintaining the current moving direction). When the first forward control unit 104 determines that the first suction pressure is equal to or greater than the first threshold value, it controls the first robot 30 so that the first suction device 31 stops moving. That is, the first forward control unit 104 controls the first robot 30 so that the first suction device 31 moves from the first initial position P10 in the direction toward the first support position P11 until it determines that the first suction pressure is equal to or greater than the first threshold value.

[0106] In addition, in the first modification, even if the first robot 30 reaches the first support position P11, if the first suction pressure does not become equal to or greater than the first threshold value, the first forward movement control unit 104 moves the first suction device 31 in the direction from the first initial position P10 to the first support position P11. Conversely, even if the first robot 30 does not reach the first support position P11, if the first suction device 31 becomes equal to or greater than the first threshold value, the first forward movement control unit 104 stops the first suction device 31. The first movement path MP1 is updated according to the position at which the first robot 30 stops advancing.

[0107] For example, the second suction pressure acquisition unit 203 acquires the second suction pressure detected by the second suction pressure detector 42. The second advance control unit 204 controls the second robot 40 so that the second suction holder 41 advances toward the amorphous object OB until the second suction pressure becomes equal to or greater than the second threshold. The second advance control unit 204 repeatedly determines whether the second suction pressure has become equal to or greater than the second threshold. The second threshold may be any value determined in advance, or may be specified by the user.

[0108] For example, when the second forward control unit 204 determines that the second suction pressure is less than the second threshold, it controls the second robot 40 so that the second suction device 41 moves from the second initial position P20 in the direction toward the second support position P21 (so that the second robot 40 moves forward while maintaining the current moving direction). When the second forward control unit 204 determines that the second suction pressure is equal to or greater than the second threshold, it controls the second robot 40 so that the second suction device 41 stops moving. That is, the second forward control unit 204 controls the second robot 40 so that the second suction device 41 moves from the second initial position P20 in the direction toward the second support position P21 until it determines that the second suction pressure is equal to or greater than the second threshold.

[0109] In addition, in the first modification, even if the second robot 40 reaches the second support position P21, if the second suction pressure does not become equal to or greater than the second threshold value, the second forward movement control unit 204 moves the second suction device 41 in the direction from the second initial position P20 to the second support position P21. Conversely, even if the second robot 40 does not reach the second support position P21, if the second suction device 41 becomes equal to or greater than the second threshold value, the second forward movement control unit 204 stops the second suction device 41. The second movement path MP2 is updated according to the position at which the second robot 40 stops advancing.

[0110] In the robot control system 1 of the first modification, at least one of the first robot 30 and the second robot 40 has an adsorption pressure detector that detects the adsorption pressure of the adsorbent. The robot control system 1 controls the at least one robot such that the adsorbent advances toward the irregular object OB until the adsorption pressure becomes equal to or greater than a threshold value. Since the adsorbent advances toward the irregular object OB until the adsorption pressure becomes equal to or greater than the threshold value, the robot control system 1 can more reliably adsorb the adsorbent to the irregular object OB.

[0111] [6-2. Variation 2] For example, the first suction device 31 and the second suction device 41 do not necessarily complete suction of the irregular object OB at the same time as each other. Completion of suction here means that the suction pressure described in Modification Example 1 becomes equal to or greater than the threshold value. The first suction device 31 may complete suction before the second suction device 41. In this case, the movement speed of the second suction device 41 may be slowed down. Conversely, the second suction device 41 may complete suction before the first suction device 31. In this case, the movement speed of the first suction device 31 may be slowed down.

[0112] Similar to the first modification, the first robot 30 of the second modification has a first suction device 31 and a first suction pressure detector 33 that detects a first suction pressure that is the suction pressure of the first suction device 31. Similar to the second modification, the second robot 40 has a second suction device 41 and a second suction pressure detector 42 that detects a second suction pressure that is the suction pressure of the second suction device 41.

[0113] The first robot control unit 101 of the second modification includes a first suction pressure acquisition unit 103, a second suction pressure acquisition unit 105, and a first speed control unit 106. The first suction pressure acquisition unit 103 is the same as that of the first modification. The second suction pressure acquisition unit 105 acquires the second suction pressure. For example, the second suction pressure acquisition unit 105 acquires the second suction pressure from the second robot controller 20. The second suction pressure acquisition unit 105 requests the second suction pressure from the second robot controller 20. When the second robot controller 20 receives the request for the second suction pressure, the second robot controller 20 transmits the second suction pressure to the first robot controller 10. The second suction pressure acquisition unit 105 repeatedly acquires the latest second suction pressure from the second robot controller 20. Note that the second suction pressure acquisition unit 105 may acquire the second suction pressure not from the second robot controller 20 but from another device or directly from the second robot 40. In this case, the first robot controller 10 is connected to the other device or the second robot 40.

[0114] The first speed control unit 106 controls the first robot 30 so that the first suction device 31 stops moving when the first suction pressure becomes equal to or greater than the first threshold, and slows down the moving speed of the first suction device 31 when the second suction pressure becomes equal to or greater than the second threshold before the first suction pressure becomes equal to or greater than the first threshold. For example, the first speed control unit 106 determines whether the first suction pressure becomes equal to or greater than the first threshold. The first speed control unit 106 determines whether the second suction pressure becomes equal to or greater than the second threshold. The first speed control unit 106 repeatedly performs these determinations based on the latest first suction pressure and second suction pressure.

[0115] For example, when it is determined that the second suction pressure is less than the second threshold value and the first suction pressure is equal to or greater than the first threshold value, the first speed control unit 106 controls the first robot 30 so that the first suction device 31 stops moving. When it is determined that the second suction pressure is equal to or greater than the second threshold value and the first suction pressure is less than the first threshold value, the first speed control unit 106 controls the first robot 30 so that the moving speed of the first suction device 31 becomes slower than the previous moving speed. The moving speed in this case may be a predetermined moving speed. After that, when it is determined that the first suction pressure is equal to or greater than the first threshold value, the first speed control unit 106 controls the first robot 30 so that the first suction device 31 stops moving.

[0116] The second robot control unit 201 includes a second suction pressure acquisition unit 203, a first suction pressure acquisition unit 205, and a second speed control unit 206. The second suction pressure acquisition unit 203 is the same as that of the first modification. The first suction pressure acquisition unit 205 acquires the first suction pressure. For example, the first suction pressure acquisition unit 205 acquires the first suction pressure from the first robot controller 10. The first suction pressure acquisition unit 205 requests the first suction pressure from the first robot controller 10. When the first robot controller 10 receives the request for the first suction pressure, the first robot controller 10 transmits the first suction pressure to the second robot controller 20. The first suction pressure acquisition unit 205 repeatedly acquires the latest first suction pressure from the first robot controller 10. Note that the first suction pressure acquisition unit 205 may acquire the first suction pressure not from the first robot controller 10 but from another device or directly from the first robot 30. In this case, the second robot controller 20 is connected to the other device or the first robot 30.

[0117] The second speed control unit 206 controls the second robot 40 so that when the second adhesion pressure becomes equal to or greater than the second threshold, the second adhesion unit 41 stops moving, and when the first adhesion pressure becomes equal to or greater than the first threshold before the second adhesion pressure becomes equal to or greater than the second threshold, the second speed control unit 206 controls the second robot 40 so that the moving speed of the second adhesion unit 41 slows down. For example, the second speed control unit 206 determines whether the first adhesion pressure becomes equal to or greater than the first threshold. The second speed control unit 206 determines whether the second adhesion pressure becomes equal to or greater than the second threshold. The second speed control unit 206 repeatedly executes these determinations based on the latest first adhesion pressure and second adhesion pressure.

[0118] For example, when it is determined that the first suction pressure is less than the first threshold value and the second suction pressure is equal to or greater than the second threshold value, the second speed control unit 206 controls the second robot 40 so that the second suction device 41 stops moving. When it is determined that the first suction pressure is equal to or greater than the first threshold value and the second suction pressure is equal to or less than the second threshold value, the second speed control unit 206 controls the second robot 40 so that the moving speed of the second suction device 41 becomes slower than the previous moving speed. The moving speed in this case may be a predetermined moving speed. After that, when it is determined that the second suction pressure is equal to or greater than the second threshold value, the second speed control unit 206 controls the second robot 40 so that the second suction device 41 stops moving.

[0119] The robot control system 1 of the second modification controls the first robot 30 so that the first suction device 31 stops moving when the first suction pressure becomes equal to or greater than the first threshold, and the moving speed of the first suction device 31 slows down when the second suction pressure becomes equal to or greater than the second threshold before the first suction pressure becomes equal to or greater than the first threshold. This allows the robot control system 1 to prevent the first suction device 31 from moving toward the irregular object OB even though it has sufficiently suctioned the irregular object OB, causing the irregular object OB to move. Furthermore, if the second suction device 41 completes suction first, the first suction device 31 may hit the irregular object OB with force, causing the irregular object OB to deform or move. However, by slowly approaching the first suction device 31 toward the irregular object OB, such a possibility can be reduced.

[0120] Moreover, the robot control system 1 controls the second robot 40 so that the second suction device 41 stops moving when the second suction pressure becomes equal to or greater than the second threshold, and slows down the moving speed of the second suction device 41 when the first suction pressure becomes equal to or greater than the first threshold before the second suction pressure becomes equal to or greater than the second threshold. This allows the robot control system 1 to prevent the second suction device 41 from moving toward the irregular object OB even though the second suction device 41 has sufficiently suctioned the irregular object OB, causing the irregular object OB to move. Furthermore, if the first suction device 31 completes suction first, the irregular object OB may be deformed or moved if the second suction device 41 hits the irregular object OB forcefully. However, by slowly approaching the irregular object OB, such a possibility can be reduced.

[0121] [6-3. Variation 3] For example, the second robot control unit 201 may have a position control unit 207 that determines a second support position P21 at which the second robot 40 supports the irregular object OB based on a first support position P11 at which the first robot 30 supports the irregular object OB. For example, the second robot control unit 201 determines the second support position P21 so that the second support position P21 matches the first support position P11. Matching the second support position P21 with the first support position P11 means that the relative positional relationship between the first support position P11 and the second support position P21 becomes a predetermined relationship. Calculating the second support position P21 based on the first support position P11 corresponds to matching the second support position P21 with the first support position P11. The control of the position control unit 207 includes the contents somewhat described in the embodiment as the control of the second robot control unit 201.

[0122] For example, the position control unit 207 acquires the first support position P11 from the first robot controller 10, and determines the second support position P21 so that the relative positional relationship with the first support position P11 is a predetermined relationship. In the example of FIG. 9, the position control unit 207 determines a position away from the first support position P11 on the opposite side of the amorphous object OB by the thickness d of the amorphous object OB as the second support position P21. The position control unit 207 may determine a position slightly away from the position as the second support position P21. The control of the second robot 40 after the second support position P21 is determined may be the same as in the embodiment.

[0123] The robot control system 1 of the third modification determines the second supporting position P21 based on the first supporting position P11. Since the robot control system 1 determines the second supporting position P21 based on the first supporting position P11, it can support the irregular object OB in a more stable state.

[0124] [6-4. Variation 4] For example, the robot control system 1 may have a start control unit that starts the suction by the suction unit after the suction unit comes into contact with the irregular object OB. In the fourth modification, the first robot controller 10 includes a first start control unit 107, and the second robot controller 20 includes a second start control unit 208. The first start control unit 107 and the second start control unit 208 are an example of a start control unit. The first robot controller 10 may not include the first start control unit 107, and the second robot controller 20 may include the second start control unit 208. Conversely, the first robot controller 10 may include the first start control unit 107, and the second robot controller 20 may not include the second start control unit 208.

[0125] For example, the first start control unit 107 determines whether the first suction device 31 has touched the irregular object OB. In the fourth modification, the first suction device 31 has a contact sensor, and the first start control unit 107 determines whether the first suction device 31 has touched the irregular object OB based on a detection signal of the contact sensor of the first suction device 31. The first start control unit 107 may determine whether the first suction device 31 has touched the irregular object OB by other methods. For example, the first start control unit 107 may determine whether the first suction device 31 has touched the irregular object OB based on a change in torque detected by a torque sensor in the first robot 30. As another example, the first start control unit 107 may determine whether the first suction device 31 has touched the irregular object OB by performing image analysis on a captured image generated by the camera 32.

[0126] For example, if it is not determined that the first suction device 31 has touched the irregular object OB, the first start control unit 107 does not start suction by the first suction device 31. If it is determined that the first suction device 31 has touched the irregular object OB, the first start control unit 107 starts suction by the first suction device 31. If it is determined that the first suction device 31 has touched the irregular object OB, the first start control unit 107 transmits a signal to the first suction device 31 to turn on suction. Upon receiving the signal, the first suction device 31 starts suction. The processing of the first robot control unit 101 after the first suction device 31 starts suction may be similar to that of the embodiment.

[0127] For example, the second start control unit 208 determines whether the second suction device 41 has touched the irregular object OB. In the fourth modification, the second suction device 41 has a contact sensor, and the second start control unit 208 determines whether the second suction device 41 has touched the irregular object OB based on a detection signal of the contact sensor of the second suction device 41. The second start control unit 208 may determine whether the second suction device 41 has touched the irregular object OB by other methods. For example, the second start control unit 208 may determine whether the second suction device 41 has touched the irregular object OB based on a change in torque detected by a torque sensor in the second robot 40. As another example, the second start control unit 208 may determine whether the second suction device 41 has touched the irregular object OB by performing image analysis on the captured image generated by the camera 32.

[0128] For example, if it is not determined that the second suction device 41 has touched the irregular object OB, the second start control unit 208 does not start suction by the second suction device 41. If it is determined that the second suction device 41 has touched the irregular object OB, the second start control unit 208 starts suction by the second suction device 41. If it is determined that the second suction device 41 has touched the irregular object OB, the second start control unit 208 transmits a signal to the second suction device 41 to turn on suction. Upon receiving the signal, the second suction device 41 starts suction. The processing of the second robot control unit 201 after the second suction device 41 starts suction may be similar to that of the embodiment.

[0129] The robot control system 1 of the fourth modification starts suction by the suction device after the suction device comes into contact with the irregular object OB. Because suction starts after the suction device comes into contact with the irregular object OB, the robot control system 1 can support the irregular object OB in a more stable state. For example, if suction starts before the suction device comes into contact with the irregular object OB, wrinkles may form on the surface of the irregular object OB, making it difficult to suction the object, but the robot control system 1 can prevent this from happening.

[0130] [6-5. Variation 5] For example, the robot control system 1 may have an adhesive force control unit that controls the adhesive device so that the adhesive force is appropriate for the irregular object OB. In the fifth modification, the first robot controller 10 includes a first adhesive force control unit 108, and the second robot controller 20 includes a second adhesive force control unit 209. The first adhesive force control unit 108 and the second adhesive force control unit 209 are examples of the adhesive force control unit. The first robot controller 10 may not include the first adhesive force control unit 108, and the second robot controller 20 may include the second adhesive force control unit 209. Conversely, the first robot controller 10 may include the first adhesive force control unit 108, and the second robot controller 20 may not include the second adhesive force control unit 209.

[0131] For example, the first suction force control unit 108 may control the first suction unit 31 to have a first suction force according to the type of the irregular object OB, as in Modification 6 described below. Modification 5 takes as an example a method other than Modification 6, in which the first suction force control unit 108 controls the first suction unit 31 to have a first suction force according to the size of the irregular object OB. The first suction force control unit 108 may specify the size of the irregular object OB based on an image captured by the camera 32. When a size parameter indicating the size of the irregular object OB input by the user is stored in the first data storage unit 100, the first suction force control unit 108 may specify the size of the irregular object OB based on the size parameter.

[0132] For example, the first suction force control unit 108 controls the first suction device 31 so that the larger the size of the irregular object OB, the stronger the first suction force. Data showing the relationship between the size of the irregular object OB and the first suction force is stored in the first data storage unit 100. The first suction force control unit 108 controls the first suction force based on the data. The first suction force control unit 108 may control the first suction device 31 so that the first suction force corresponds to the position, shape, or material of the irregular object OB in addition to the size of the irregular object OB.

[0133] For example, the second suction force control unit 209 may control the second suction unit 41 to have a second suction force according to the type of the irregular object OB, as in Modification 6 described below. Modification 5 takes as an example a method other than Modification 6, in which the second suction force control unit 209 controls the second suction unit 41 to have a second suction force according to the size of the irregular object OB. The second suction force control unit 209 may specify the size of the irregular object OB based on an image captured by the camera 32. When a size parameter indicating the size of the irregular object OB input by the user is stored in the second data storage unit 200, the second suction force control unit 209 may specify the size of the irregular object OB based on the size parameter.

[0134] For example, the second suction force control unit 209 controls the second suction device 41 so that the larger the size of the irregular object OB, the stronger the second suction force. Data indicating the relationship between the size of the irregular object OB and the second suction force is stored in the second data storage unit 200. The second suction force control unit 209 controls the second suction force based on the data. The second suction force control unit 209 may control the second suction device 41 so that the second suction force corresponds to the position, shape, or material of the irregular object OB in addition to the size of the irregular object OB.

[0135] The robot control system 1 of the modified example 5 controls the sucker so that the suction force is in accordance with the irregular object OB. Since the sucker sucks the irregular object OB with a suction force in accordance with the irregular object OB, the robot control system 1 can support the irregular object OB in an optimal state in accordance with the irregular object OB.

[0136] [6-6. Variation 6] For example, as in the fifth modification, when the suction force is set according to the irregular object OB, the robot control system 1 may set the suction force according to the type of the irregular object OB. The robot control system 1 of the sixth modification further includes a type identification unit that identifies the type of the irregular object OB. For example, the first robot controller 10 includes the first type identification unit 109, and the second robot controller 20 includes the second type identification unit 210. The first type identification unit 109 and the second type identification unit 210 are examples of a type control unit. The first robot controller 10 may not include the first type identification unit 109, and the second robot controller 20 may include the second type identification unit 210. Conversely, the second robot controller 20 may not include the second type identification unit 210, and the first robot controller 10 may include the first type identification unit 109.

[0137] For example, when a user specifies a type of an irregular object OB, a type parameter indicating the type specified by the user is assumed to be stored in advance in the first data storage unit 100 and the second data storage unit 200. The first type identification unit 109 specifies the type of the irregular object OB based on the type parameter. The second type identification unit 210 specifies the type of the irregular object OB based on the type parameter.

[0138] The method of identifying the type of the irregular object OB is not limited to the user's designation. For example, the first type identification unit 109 may perform image analysis of the captured image generated by the camera 32 to identify the type of the irregular object OB. The second type identification unit 210 may perform image analysis of the captured image generated by the camera 32 to identify the type of the irregular object OB. The second type identification unit 210 may acquire the identification result by the first type identification unit 109 instead of performing image analysis by itself.

[0139] The suction force control unit of the sixth modification controls the sucker so that the suction force corresponds to the type of the irregular object OB. In the sixth modification, since each of the first sucker 31 and the second sucker 41 is a suction machine, the suction force by the suction machine corresponds to the suction force. When a sucker other than a suction machine is used, the suction force may be one corresponding to the other sucker. For example, when the other sucker is a suction cup, the pressing force of the suction cup against the irregular object OB corresponds to the suction force. When the other sucker is a robot hand, the gripping force of the robot hand corresponds to the suction force.

[0140] For example, the first suction force control unit 108 controls the first suction device 31 so that the first suction force corresponds to the type of the irregular object OB. For example, when the irregular object OB is a first type (e.g., a paper bag), the first suction force control unit 108 controls the first suction device 31 so that the first suction force is stronger than when the irregular object OB is a second type (e.g., a plastic bag). Data indicating the relationship between the type of the irregular object OB and the first suction force is stored in the first data storage unit 100. The first suction force control unit 108 controls the first suction force based on the data.

[0141] For example, the second suction force control unit 209 controls the second suction device 41 to have a second suction force according to the type of the irregular object OB. For example, when the irregular object OB is the second type, the second suction force control unit 209 controls the second suction device 41 to have a stronger second suction force than when the irregular object OB is the second type. Data indicating the relationship between the type of the irregular object OB and the second suction force is stored in the second data storage unit 200. The second suction force control unit 209 controls the second suction force based on the data.

[0142] The robot control system 1 of the sixth modified example specifies the type of the irregular object OB. The robot control system 1 controls the sucker so that the suction force is in accordance with the type of the irregular object OB. Because the sucker sucks the irregular object OB with a suction force in accordance with the type of the irregular object OB, the robot control system 1 can support the irregular object OB in a more stable state.

[0143] [6-7. Variation 7] For example, at least one of the first robot 30 and the second robot 40 may support a support position corresponding to the center of gravity of the amorphous object OB. For example, the support position is a position on the surface of the amorphous object OB at the same height as the center of gravity. The support position is a position on the surface of the amorphous object OB within a predetermined distance from the position at the same height as the center of gravity.

[0144] The robot control system 1 of the seventh modification includes a center of gravity identifying unit that identifies the center of gravity of an irregular object OB placed at a predetermined location. For example, the first robot controller 10 includes a first center of gravity identifying unit 110. The second robot controller 20 includes a second center of gravity identifying unit 211. The first center of gravity identifying unit 110 and the second center of gravity identifying unit 211 are examples of center of gravity identifying units. The first robot controller 10 may not include the first center of gravity identifying unit 110, and the second robot controller 20 may include the second center of gravity identifying unit 211. Conversely, the second robot controller 20 may not include the second center of gravity identifying unit 211, and the first robot controller 10 may include the first center of gravity identifying unit 110.

[0145] For example, the first center of gravity identifying unit 110 identifies the center of gravity of the amorphous object OB based on a captured image showing the amorphous object OB captured by the camera 32. The first center of gravity identifying unit 110 may perform image analysis using a predetermined method to identify the center of gravity of the amorphous object OB. The first center of gravity identifying unit 110 may identify the center point of the amorphous object OB as the center of gravity of the amorphous object OB. The first center of gravity identifying unit 110 may input the captured image to a machine learning model that has learned the centers of gravity of various objects as training data, and obtain the center of gravity output from the machine learning model. The second center of gravity identifying unit 211 may identify the center of gravity using the same method as the first center of gravity identifying unit 110, or may obtain the center of gravity identified by the first center of gravity identifying unit 110 from the first robot controller 10. The center of gravity may be specified as a parameter by the user instead of the captured image.

[0146] The robot control system 1 of the seventh modification has a support position support unit that controls at least one of the first robot 30 and the second robot 40 so that the robot supports the amorphous object OB at a support position according to the center of gravity. For example, the first robot controller 10 includes a first support position support unit 111. The second robot controller 20 includes a second support position support unit 212. The first support position support unit 111 and the second support position support unit 212 are examples of the support position support unit. The first robot controller 10 may not include the first support position support unit 111, and the second robot controller 20 may include the second support position support unit 212. Conversely, the second robot controller 20 may not include the second support position support unit 212, and the first robot controller 10 may include the first support position support unit 111.

[0147] FIG. 12 is a diagram showing an example of the first support position P11 and the second support position P21 according to the center of gravity. In the example of FIG. 12, the center of gravity is G. The first support position support unit 111 determines a position on the surface of the amorphous object OB on the first robot 30 side that is at the same height as the center of gravity G as the first support position P11. The second support position support unit 212 determines a position on the surface of the amorphous object OB on the second robot 40 side that is at the same height as the center of gravity G as the second support position P21. Although the method of determining the first support position P11 and the second support position P21 is different from the embodiment, the method of controlling the first robot 30 and the second robot 40 after the first support position P11 and the second support position P21 are determined may be the same as the embodiment.

[0148] The robot control system 1 of the seventh modified example specifies the center of gravity of an irregular object OB placed at a predetermined location. The robot control system 1 controls at least one of the first robot 30 and the second robot 40 so that the robot supports the irregular object OB at a support position corresponding to the center of gravity. Because at least one of the first robot 30 and the second robot 40 supports the irregular object OB at a support position corresponding to the center of gravity, the robot control system 1 can support the irregular object OB in a more stable state.

[0149] Furthermore, the robot control system 1 specifies the center of gravity based on an image showing the irregular object OB captured by the camera 32. The robot control system 1 can use the camera 32 to reliably specify the center of gravity of the irregular object OB.

[0150] [6-8. Variation 8] For example, in Modification 7, the support position support unit may control at least one of the robots so that the at least one robot supports the irregular object OB in the horizontal direction at a first horizontal position corresponding to the center of gravity, and supports the irregular object OB in the vertical direction at a predetermined first vertical position. In Modification 8, as in Modification 7, a case will be described in which the first support position support unit 111 and the second support position support unit 212 are examples of the support position support unit.

[0151] For example, the first support position support unit 111 determines the first support position P11 so that the position of the center of gravity in the horizontal direction and the first support position P11 in the horizontal direction are the same or within a predetermined distance, and the first support position P11 in the vertical direction is a predetermined position. The second support position support unit 212 determines the second support position P21 so that the position of the center of gravity in the horizontal direction and the second support position P21 in the horizontal direction are the same or within a predetermined distance, and the second support position P21 in the vertical direction is a predetermined position. Although the method of determining the first support position P11 and the second support position P21 is different from the embodiment, the method of controlling the first robot 30 and the second robot 40 after the first support position P11 and the second support position P21 are determined may be the same as the embodiment.

[0152] The robot control system 1 of the eighth modified example controls at least one of the first robot 30 and the second robot 40 so that at least one of the robots supports the irregular object OB in the horizontal direction at a first horizontal position corresponding to the center of gravity, and supports the irregular object OB in the vertical direction at a predetermined first vertical position. Since at least one of the first robot 30 and the second robot 40 supports the irregular object OB in the horizontal direction at a position corresponding to the center of gravity of the irregular object OB, and supports the irregular object OB in a predetermined position in the vertical direction, the robot control system 1 can support the irregular object OB in a more stable state.

[0153] [6-9. Variation 9] For example, in Modification 7, the support position support unit may control at least one of the first robot 30 and the second robot 40 so that the robot supports the amorphous object OB at a second vertical position that is lower than the center of gravity in the vertical direction. In Modification 9, as in Modification 7, a case will be described in which the first support position support unit 111 and the second support position support unit 212 are an example of the support position support unit.

[0154] For example, the first support position support unit 111 determines the first support position P11 such that the distance in the vertical direction from the position of the center of gravity to the first support position P11 is less than a predetermined distance downward. The second support position support unit 212 determines the second support position P21 such that the distance in the vertical direction from the position of the center of gravity to the second support position P21 is less than a predetermined distance downward. Although the method of determining the first support position P11 and the second support position P21 is different from the embodiment, the method of controlling the first robot 30 and the second robot 40 after the first support position P11 and the second support position P21 are determined may be the same as the embodiment.

[0155] The robot control system 1 of the 9th modification controls at least one of the first robot 30 and the second robot 40 so that the at least one of the robots supports the irregular object OB at a second vertical position that is lower than the center of gravity in the vertical direction. Since at least one of the first robot 30 and the second robot 40 supports the irregular object OB below the center of gravity in the vertical direction, the robot control system 1 can support the irregular object OB in a more stable state.

[0156] [6-10. Variation 10] For example, the first robot 30 may support a first support position P11 according to the size of the irregular object OB, and the second robot 40 may support a second support position P21 according to the size of the irregular object OB.

[0157] The robot control system 1 includes a size specifying unit that specifies the size of the irregular object OB. For example, the first robot controller 10 includes a first size specifying unit 112, and the second robot controller 20 includes a second size specifying unit 213. The first size specifying unit 112 and the second size specifying unit 213 are examples of a size specifying unit. The first robot controller 10 may not include the first size specifying unit 112, and the second robot controller 20 may include the second size specifying unit 213. Conversely, the first robot controller 10 may include the first size specifying unit 112, and the second robot controller 20 may not include the second size specifying unit 213.

[0158] For example, when a user specifies the size of an irregular object OB, it is assumed that size parameters indicating the size specified by the user are stored in advance in the first data storage unit 100 and the second data storage unit 200. The first size specification unit 112 specifies the size of the irregular object OB based on the size parameters. The second size specification unit 213 specifies the size of the irregular object OB based on the size parameters. Note that the method of specifying the size of the irregular object OB is not limited to the specification by the user. For example, the first size specification unit 112 may perform image analysis of the captured image generated by the camera 32 to specify the size of the irregular object OB. The second size specification unit 213 may perform image analysis of the captured image generated by the camera 32 to specify the size of the irregular object OB. The second size specification unit 213 may acquire the result of specification by the first size specification unit 112, rather than performing image analysis by itself.

[0159] The robot control system 1 has a size position support unit that controls at least one of the first robot 30 and the second robot 40 so that the robot supports the irregular object OB at a size position according to the size. For example, the first robot controller 10 includes a first size position support unit 113, and the second robot controller 20 includes a second size position support unit 214. The first size position support unit 113 and the second size position support unit 214 are examples of a size position support unit. The first robot controller 10 may not include the first size position support unit 113, and the second robot controller 20 may include the second size position support unit 214. Conversely, the first robot controller 10 may include the first size position support unit 113, and the second robot controller 20 may not include the second size position support unit 214.

[0160] For example, the first size position support unit 113 determines the first support position P11 so that the larger the size of the irregular object OB, the higher the first support position P11. The second size position support unit 214 determines the second support position P21 so that the larger the size of the irregular object OB, the higher the second support position P21. Although the method of determining the first support position P11 and the second support position P21 is different from the embodiment, the method of controlling the first robot 30 and the second robot 40 after the first support position P11 and the second support position P21 are determined may be similar to the embodiment.

[0161] The robot control system 1 of the tenth modification specifies the size of the irregular object OB. The robot control system 1 controls at least one of the first robot 30 and the second robot 40 so that the robot supports the irregular object OB at a size position according to the size. The robot control system 1 can support the irregular object OB at a size position according to the properties of the irregular object OB.

[0162] [6-11. Variation 11] For example, the first robot 30 and the second robot 40 may assume a posture according to the center of gravity of the irregular object OB during the transport of the irregular object OB. The robot control system 1 of the modification 11 includes a center of gravity identifying unit similar to that of the modification 7. In the modification 11, as in the modification 7, an example is given in which the first robot controller 10 includes the first center of gravity identifying unit 110 and the second robot controller 20 includes the second center of gravity identifying unit 211. In the modification 7, the case in which the center of gravity of the irregular object OB is identified before the transport is described, but in the modification 11, the center of gravity of the irregular object OB is identified during the transport. The method of identifying the center of gravity itself is as described in the modification 7.

[0163] The robot control system 1 of the eleventh modification has a posture control unit that controls the posture of at least one of the first robot 30 and the second robot 40 during the transfer of the irregular object OB based on the center of gravity of the irregular object OB during the transfer. For example, the first robot controller 10 includes a first posture control unit 114. The second robot controller 20 includes a second posture control unit 215. The first posture control unit 114 and the second posture control unit 215 are examples of posture control units. The first robot controller 10 may not include the first posture control unit 114, and the second robot controller 20 may include the second posture control unit 215. Conversely, the second robot controller 20 may not include the second posture control unit 215, and the first robot controller 10 may include the first posture control unit 114.

[0164] For example, data indicating the relationship between the center of gravity of the irregular object OB and the posture of the first robot 30 is stored in advance in the first data storage unit 100. The data may be a first robot control program, or may be data different from the first robot control program (e.g., data in a mathematical formula format or table format). The first posture control unit 114 controls the first robot 30 based on the data so that the first robot 30 assumes a posture associated with the center of gravity of the irregular object OB. For example, the first posture control unit 114 controls the first robot 30 so that the lower the center of gravity of the irregular object OB is, the more upwardly the first suction device 31 faces.

[0165] For example, data indicating the relationship between the center of gravity of the irregular object OB and the posture of the second robot 40 is stored in advance in the second data storage unit 200. The data may be a second robot control program, or may be data different from the second robot control program (e.g., data in a mathematical formula format or table format). The second posture control unit 215 controls the second robot 40 based on the data so that the second robot 40 assumes a posture associated with the center of gravity of the irregular object OB. For example, the second posture control unit 215 controls the second robot 40 so that the lower the center of gravity of the irregular object OB is, the more upwardly the second suction unit 41 faces.

[0166] The robot control system 1 of the eleventh modification specifies the center of gravity of the irregular object OB during transportation. The robot control system 1 controls the posture of at least one of the first robot 30 and the second robot 40 during transportation of the irregular object OB based on the center of gravity of the irregular object OB during transportation. The robot control system 1 can execute control according to the center of gravity during transportation.

[0167] [6-12. Variation 12] For example, the robot control system 1 may have an orientation control unit that controls at least one of the first robot 30 and the second robot 40 so that the suction device picks up the irregular object OB in an orientation (posture) corresponding to the irregular object OB. In the twelfth modification, the first robot controller 10 includes a first orientation control unit 115, and the second robot controller 20 includes a second orientation control unit 216. The first orientation control unit 115 and the second orientation control unit 216 are an example of an orientation control unit. The first robot controller 10 may not include the first orientation control unit 115, and the second robot controller 20 may include the second orientation control unit 216. Conversely, the second robot controller 20 may not include the second orientation control unit 216, and the first robot controller 10 may include the first orientation control unit 115.

[0168] 13 is a diagram showing an example of how each of the first suction device 31 and the second suction device 41 adsorbs the irregular object OB in an orientation corresponding to the irregular object OB. For example, when the irregular object OB is vertically long, the first orientation control unit 115 controls the attitude of the first suction device 31 so that the first suction device 31 adsorbs the irregular object OB in a vertically long state. When the irregular object OB is horizontally long, the first orientation control unit 115 controls the attitude of the first suction device 31 so that the first suction device 31 adsorbs the irregular object OB in a horizontally long state.

[0169] For example, when the irregular object OB is vertically long, the second orientation control unit 216 controls the attitude of the second suction device 41 so that the second suction device 41 adsorbs the irregular object OB in a vertically long state. When the irregular object OB is horizontally long, the second orientation control unit 216 controls the attitude of the second suction device 41 so that the second suction device 41 adsorbs the irregular object OB in a horizontally long state.

[0170] The robot control system 1 of the modified example 12 controls at least one of the first robot 30 and the second robot 40 so that the suction device suctions the irregular object OB in an orientation corresponding to the irregular object OB. Since the robot control system 1 can suction the irregular object OB in an orientation corresponding to the irregular object OB, the reliability of supporting the irregular object OB is increased.

[0171] [6-13. Variation 13] For example, the robot control system 1 may have a post-processing position control unit that controls at least one of the first robot 30 and the second robot 40 so that the robot supports the amorphous object OB at a post-processing position corresponding to the post-processing performed after the amorphous object OB is transported. The post-processing is a process after the transportation of the amorphous object OB. In the example of the embodiment, the post-processing corresponds to the process of dropping the contents of the amorphous object OB into the storage container C. The post-processing position is the support position in the modification 13. Note that a post-processing parameter indicating the post-processing specified by the user may be stored in the first data storage unit 100 and the second data storage unit 200, or the post-processing may be specified based on a code in the first robot control program and the second robot control program.

[0172] In the fifth modification, the first robot controller 10 includes a first post-process position control unit 116, and the second robot controller 20 includes a second post-process position control unit 217. The first post-process position control unit 116 and the second post-process position control unit 217 are an example of a post-process position control unit. The first robot controller 10 may not include the first post-process position control unit 116, and the second robot controller 20 may include the second post-process position control unit 217. Conversely, the first robot controller 10 may include the first post-process position control unit 116, and the second robot controller 20 may not include the second post-process position control unit 217.

[0173] For example, data indicating the relationship between the post-process and the first post-process position (first support position P11 in Modification 13) is stored in advance in the first data storage unit 100. The data may be a first robot control program, or may be data different from the first robot control program (e.g., data in a mathematical formula format or table format). The first post-process position control unit 116 determines the first support position P11 based on the data so that the first support position P11 is the first support position P11 associated with the post-process. For example, when the process of dropping the contents of the irregular object OB into the storage container C corresponds to the post-process, the first post-process position control unit 116 determines the first support position P11 so that the first support position P11 is lower than when the post-process is another process (e.g., a process of placing the irregular object OB on a belt conveyor).

[0174] For example, data indicating the relationship between the post-process and the second post-process position (the second support position P21 in the modified example 13) is stored in advance in the second data storage unit 200. The data may be a second robot control program, or may be data different from the second robot control program (for example, data in a mathematical formula format or a table format). The second post-process position control unit 217 determines the second support position P21 based on the data so that the second post-process position associated with the post-process becomes the second support position P21. Although the method of determining the first support position P11 and the second support position P21 is different from the embodiment, the method of controlling the first robot 30 and the second robot 40 after the first support position P11 and the second support position P21 are determined may be the same as the embodiment.

[0175] The robot control system 1 of the modified example 13 controls at least one of the first robot 30 and the second robot 40 so that the at least one of the robots supports the irregular object OB at a first post-process position according to the post-process to be performed after the irregular object OB is transported. The robot control system 1 can clamp the irregular object OB at a clamping position according to the post-process.

[0176] [6-14. Other variations] For example, the above modifications may be combined.

[0177] For example, each function described above may be realized by any device in the robot control system 1. A function described as being included in the first robot controller 10 may be realized by the second robot controller 20 or another device. A function described as being included in the second robot controller 20 may be realized by the first robot controller 10 or another device. A function described as being realized by one device may be shared by multiple devices.

[0178] For example, the robot control system may be configured as follows. (1) The first robot, A second robot; a first robot control unit that controls the first robot so that the first robot supports a part of an irregular object placed at a predetermined location; a second robot control unit that controls the second robot so that the second robot cooperates with the first robot to support a portion of the irregular object that is different from the part of the irregular object and transport the irregular object; A robot control system having the following: (2) The second robot control unit has a second clamping control unit that controls the second robot so that the second robot clamps and supports the irregular object between the second robot and the first robot. A robot control system as described in (1). (3) At least one of the first robot and the second robot has a suction device that suctions the irregular object. A robot control system according to (1) or (2). (4) The suction device is a suction device that suctions the amorphous object. (3) A robot control system as described above. (5) the at least one robot has an adsorption pressure detector that detects an adsorption pressure of the adsorption unit, The robot control system includes: a suction pressure acquisition unit for acquiring the suction pressure; an advance control unit that controls the at least one robot so that the suction device advances toward the irregular object until the suction pressure becomes equal to or greater than a threshold; A robot control system according to (3) or (4). (6) the first robot has a first suction device and a first adhesion pressure detector that detects a first adhesion pressure that is an adhesion pressure of the first suction device, the second robot has a second suction device and a second suction pressure detector that detects a second suction pressure that is an suction pressure of the second suction device, The first robot control unit is a first suction pressure acquisition unit that acquires the first suction pressure; a second suction pressure acquisition unit that acquires the second suction pressure; a first speed control unit that controls the first robot so that, when the first suction pressure becomes equal to or greater than a first threshold, the first suction holder stops moving, and, when the second suction pressure becomes equal to or greater than the second threshold before the first suction pressure becomes equal to or greater than the first threshold, the first speed control unit controls the first robot so that the first suction holder stops moving, and, when the second suction pressure becomes equal to or greater than the second threshold before the first suction pressure becomes equal to or greater than the first threshold, the first suction holder slows down a moving speed of the first suction holder; having The second robot control unit is a first suction pressure acquisition unit that acquires the first suction pressure; a second suction pressure acquisition unit that acquires the second suction pressure; a second speed control unit that controls the second robot so that, when the second suction pressure becomes equal to or greater than the second threshold value, the second suction holder stops moving, and, when the first suction pressure becomes equal to or greater than the first threshold value before the second suction pressure becomes equal to or greater than the second threshold value, the second suction holder slows down a moving speed; The robot control system according to (5) above, (7) The second robot control unit has a position control unit that determines a position at which the second robot supports the irregular object based on a position at which the first robot supports the irregular object. A robot control system according to any one of (1) to (6). (8) the robot control system has a start control unit that starts suction by the suction unit after the suction unit comes into contact with the irregular object, A robot control system according to any one of (3) to (6). (9) the robot control system has an adsorption force control unit that controls the adsorption device so that the adsorption force corresponds to the irregular object. A robot control system according to any one of (3) to (6) or (8). (10) The robot control system further includes a type identification unit that identifies a type of the irregular object, the adsorptive force control unit controls the adsorber so as to have an adsorptive force according to the type. (9) A robot control system according to (9). (11) The robot control system includes: A center of gravity identifying unit that identifies a center of gravity of the shapeless object placed at the location; a support position support unit that controls at least one of the first robot and the second robot so as to support the irregular object at a support position corresponding to the center of gravity; A robot control system according to any one of (1) to (10). (12) The support position support unit controls the at least one robot so that the at least one robot supports the irregular object at a first horizontal position corresponding to the center of gravity in a horizontal direction and supports the irregular object at a predetermined first vertical position in a vertical direction. A robot control system as described in (11). (13) The support position support unit controls the at least one robot so that the at least one robot supports the irregular object at a second vertical position that is lower than the center of gravity in the vertical direction. A robot control system as described in (12). (14) The center of gravity identification unit identifies the center of gravity based on an image showing the shapeless object captured by a camera. A robot control system according to any one of (11) to (13). (15) The robot control system includes: A size specifying unit that specifies the size of the irregular object; a size position support unit that controls at least one of the first robot and the second robot so that the at least one of the first robot and the second robot supports the irregular object at a size position according to the size; A robot control system according to any one of (1) to (14). (16) The robot control system includes: a center of gravity identifying unit that identifies a center of gravity of the irregular object during transportation; a posture control unit that controls a posture of at least one of the first robot and the second robot during transport of the irregular object based on the center of gravity; The robot control system according to any one of (1) to (15), comprising: (17) the robot control system has an orientation control unit that controls at least one of the first robot and the second robot so that the suction device suctions the irregular object in an orientation corresponding to the irregular object. A robot control system according to any one of (3) to (6) or (8) or (9). (18) The robot control system includes a post-process position control unit that controls at least one of the first robot and the second robot so that the at least one of the first robot and the second robot supports the irregular object at a post-process position corresponding to a post-process to be performed after the irregular object is transported. A robot control system according to any one of (1) to (17). [Explanation of symbols]

[0179] 1 robot control system, 10 first robot controller, 20 second robot controller, 11, 21 CPU, 12, 22 memory unit, 13, 23 communication unit, 30 first robot, 31 first suction unit, 32 camera, 33 first suction pressure detector, 41 second suction unit, 42 second suction pressure detector, 100 first data memory unit, 101 first robot control unit, 102 first clamping control unit, 103 first suction pressure acquisition unit, 104 first forward control unit, 105 second suction pressure acquisition unit, 106 first speed control unit, 107 first start control unit, 108 first suction force control unit, 109 first type identification unit, 110 first center of gravity identification unit, 111 first support position support unit, 112 first size identification unit, 113 first size position support unit, 114 first attitude control unit, 115 first orientation control unit, 116 first post-process position control unit, 200 Second data storage unit, 201, second robot control unit, 202, second clamping control unit, 203, second suction pressure acquisition unit, 204, second forward movement control unit, 205, first suction pressure acquisition unit, 206, second speed control unit, 207, position control unit, 208, second start control unit, 209, second suction force control unit, 210, second type identification unit, 211, second center of gravity identification unit, 212, second support position support unit, 213, second size identification unit, 214, second size position support unit, 215, second attitude control unit, 216, second orientation control unit, 217, second post-process position control unit, OB, indefinite object, T, workbench, C, storage container, FP1, FP2, shooting position, FD1, FD2, shooting direction, P10, first initial position, P11, first support position, P12, first target position, MP1, first movement path, P20, second initial position, P21, second support position, P22 Second target position, MP2 second movement path.

Claims

1. A first robot; A second robot; and a first robot control unit that controls the first robot so that the first robot supports a part of an irregular object placed at a predetermined location; a second robot control unit that controls the second robot so that the second robot cooperates with the first robot to support a portion of the irregular object that is different from the part of the irregular object and transport the irregular object; A robot control system having the following:

2. The second robot control unit has a second clamping control unit that controls the second robot so that the second robot clamps and supports the irregular object between the second robot and the first robot. The robot control system of claim 1 .

3. At least one of the first robot and the second robot has a suction device that suctions the irregular object.

3. The robot control system according to claim 1 or 2.

4. The suction device is a suction device that suctions the amorphous object. The robot control system of claim 3.

5. the at least one robot has an adsorption pressure detector that detects an adsorption pressure of the adsorption unit, The robot control system includes: a suction pressure acquisition unit for acquiring the suction pressure; an advance control unit that controls the at least one robot so that the suction device advances toward the irregular object until the suction pressure becomes equal to or greater than a threshold; 4. The robot control system of claim 3, further comprising:

6. the first robot has a first suction device and a first suction pressure detector that detects a first suction pressure that is an suction pressure of the first suction device, the second robot has a second suction device and a second suction pressure detector that detects a second suction pressure that is an suction pressure of the second suction device, The first robot control unit is a first suction pressure acquisition unit that acquires the first suction pressure; a second suction pressure acquisition unit that acquires the second suction pressure; a first speed control unit that controls the first robot so that, when the first suction pressure becomes equal to or greater than a first threshold, the first suction holder stops moving, and so that, when the second suction pressure becomes equal to or greater than the second threshold before the first suction pressure becomes equal to or greater than the first threshold, a moving speed of the first suction holder is slowed down; having The second robot control unit is a first suction pressure acquisition unit that acquires the first suction pressure; a second suction pressure acquisition unit that acquires the second suction pressure; a second speed control unit that controls the second robot so that, when the second suction pressure becomes equal to or greater than the second threshold value, the second suction holder stops moving, and, when the first suction pressure becomes equal to or greater than the first threshold value before the second suction pressure becomes equal to or greater than the second threshold value, the second suction holder slows down a moving speed of the second suction holder; 6. The robot control system of claim 5, further comprising:

7. The second robot control unit has a position control unit that determines a position at which the second robot supports the irregular object based on a position at which the first robot supports the irregular object.

3. The robot control system according to claim 1 or 2.

8. the robot control system has a start control unit that starts suction by the suction unit after the suction unit comes into contact with the irregular object, The robot control system of claim 3.

9. the robot control system has an adsorption force control unit that controls the adsorption device so that the adsorption force corresponds to the irregular object. The robot control system of claim 3.

10. The robot control system further includes a type identification unit that identifies a type of the irregular object, the adsorptive force control unit controls the adsorber so as to have an adsorptive force according to the type. The robotic control system of claim 9.

11. The robot control system includes: A center of gravity identifying unit that identifies a center of gravity of the shapeless object placed at the location; a support position support unit that controls at least one of the first robot and the second robot so as to support the irregular object at a support position corresponding to the center of gravity; 3. The robot control system according to claim 1 or 2.

12. The support position support unit controls the at least one robot so that the at least one robot supports the irregular object at a first horizontal position corresponding to the center of gravity in a horizontal direction and supports the irregular object at a predetermined first vertical position in a vertical direction. The robotic control system of claim 11.

13. The support position support unit controls the at least one robot so that the at least one robot supports the irregular object at a second vertical position that is lower than the center of gravity in the vertical direction. The robotic control system of claim 12.

14. The center of gravity identification unit identifies the center of gravity based on an image showing the shapeless object captured by a camera. The robotic control system of claim 11.

15. The robot control system includes: A size specifying unit that specifies the size of the irregular object; a size position support unit that controls at least one of the first robot and the second robot so that the at least one of the first robot and the second robot supports the irregular object at a size position according to the size; 3. The robot control system according to claim 1, further comprising:

16. The robot control system includes: a center of gravity identifying unit that identifies a center of gravity of the irregular object during transportation; a posture control unit that controls a posture of at least one of the first robot and the second robot during transport of the irregular object based on the center of gravity; 3. The robot control system according to claim 1, further comprising:

17. the robot control system includes an orientation control unit that controls at least one of the first robot and the second robot so that the suction device suctions the irregular object in an orientation corresponding to the irregular object. The robot control system of claim 3.

18. the robot control system includes a post-process position control unit that controls at least one of the first robot and the second robot so that the at least one of the first robot and the second robot supports the irregular object at a post-process position corresponding to a post-process to be performed after the irregular object is transported.

3. The robot control system according to claim 1 or 2.

19. Controlling a first robot so as to support a part of an irregular object placed at a predetermined location; controlling the second robot so as to cooperate with the first robot and transport the irregular object while supporting a portion of the irregular object that is different from the portion of the irregular object; A method for controlling a robot.

20. A second robot controller that controls a second robot that cooperates with the first robot, a second robot control unit that controls the second robot so that the second robot cooperates with the first robot to support a portion of an irregular object placed at a predetermined location that is different from a portion supported by the first robot and transports the irregular object; A program to function as a

Citation Information

Patent Citations

  • Hand device for industrial robot

    JP1995136966A

  • Positioning robot

    JP2007160437A

  • Sheet taking out device and packing device

    JP2007168874A

  • Unpacking device, and unpacked content manufacturing method

    JP2013100118A

  • Gravity detection device of bag-like article

    JP2018031585A

Cited By

  • Signal conversion device

    DE202026103565U1

  • signal conversion device

    JP3252489U