Robot, control method and control program
The robot's innovative use of an end effector and articulated arm with spatial region control minimizes collisions and size, improving volumetric efficiency and safety.
Patent Information
- Application Number
- JP2024088502
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-31
- Publication Date
- 2025-12-11
AI Technical Summary
Conventional transport robots are bulky due to encompassing the entire object, leading to increased size and potential collisions, which hinders volumetric efficiency and safe operation.
A robot design utilizing an end effector and articulated robot arm with ingenious control to transition a reference point to a target position and posture, avoiding collisions by defining spatial regions and generating via positions and postures outside these regions.
The design allows for a compact robot with reduced self-collision risk, enhancing facility utilization efficiency and ensuring safe operation.
Smart Images

Figure 2025180862000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a robot, and more particularly to a robot that transports objects in a warehouse or the like. [Background technology]
[0002] In recent years, robots have become known that transport objects within a warehouse, etc. For example, Patent Document 1 discloses a warehouse robot that transports objects within a warehouse. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Special Publication No. 2022-539936 Summary of the Invention [Problem to be solved by the invention]
[0004] In the conventional transport robots such as that shown in Patent Document 1, the transport device (for example, Patent Document 20) that transports the object to the storage unit has a configuration that encompasses the entire object. This increases the size of the transport device, and as a result, the size of the entire transport robot. If this transport device were made smaller and configured so that it does not encompass the object, new problems would arise, such as collisions between parts of the object and parts of the robot, or between parts of the robot themselves.
[0005] That is, in the conventional configuration, it was necessary to design the size of the entire robot according to the size of the object to be transported, making it difficult to improve the volumetric efficiency of the warehouse.
[0006] The present invention has been made in view of the above-mentioned technical background, and an object of the present invention is to provide a robot that is small and has no risk of self-collision. [Means for solving the problem]
[0007] The above-mentioned technical problems can be solved by a robot, a control method, a control program, etc. having the following configurations.
[0008] That is, the robot according to the present invention is a robot including an end effector that holds or releases an object, an operating device that includes an articulated robot arm and that causes the end effector to perform translational and rotational movements, and a control unit that controls the operating device to transition a reference point defined for the end effector or the operating device to a target position and a target posture, wherein a first spatial region is defined in the vicinity of the robot, and when either or both of the current position of the reference point and the target position belong to the first spatial region, the control unit controls the reference point to transition to a predetermined via position and via posture and then to the target position and target posture.
[0009] This configuration uses an operating device including an end effector and an articulated robot arm, eliminating the need for a mechanism that encompasses the entire object being held, allowing for the robot's hardware to be miniaturized. Furthermore, by using ingenious control, the end effector or the object being held by the end effector can be prevented from colliding with any part of the robot. This means that a robot can be provided that can improve facility utilization efficiency, such as volume efficiency, while also ensuring safe operation. [Effects of the Invention]
[0010] According to the present invention, it is possible to provide a robot that is small and has no risk of self-collision. [Brief explanation of the drawings]
[0011] [Figure 1] FIG. 1 is a perspective view showing the overall configuration of a mobile manipulator. [Figure 2] FIG. 2 is an enlarged perspective view of the object manipulation unit. [Figure 3] FIG. 3 is a functional block diagram of the mobile manipulator. [Figure 4] FIG. 4 is a flowchart (first embodiment) relating to the transition operation of the mobile manipulator to the target position and posture. [Figure 5] FIG. 5 is an explanatory diagram relating to an example in which the current position is included in a predetermined spatial region. [Figure 6] FIG. 6 is an explanatory diagram relating to an example in which the target position is included in a predetermined spatial region. [Figure 7] FIG. 7 is an explanatory diagram relating to an example in which both the current position and the target position are included in a predetermined spatial region. [Figure 8] FIG. 8 is an explanatory diagram relating to another example of setting the spatial domain. [Figure 9] FIG. 9 is a modified flowchart of the transition operation of the mobile manipulator to the target position and orientation. [Figure 10] FIG. 10 is a flowchart (second embodiment) relating to the transition operation of the mobile manipulator to the target position and posture. [Figure 11] FIG. 11 is an explanatory diagram relating to an example of setting the first spatial region (S1) and the second spatial region (S2). [Figure 12] FIG. 12 is an explanatory diagram relating to another example of setting two spatial regions. [Figure 13] FIG. 13 is a flowchart (third embodiment) relating to the transition operation of the mobile manipulator to the target position and posture. [Figure 14] FIG. 14 is an explanatory diagram showing an example in which two via point generation regions are arranged in a space. [Figure 15] FIG. 15 is an explanatory diagram showing a case where way point generation areas overlap each other. DETAILED DESCRIPTION OF THE INVENTION
[0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0013] (1. First embodiment) As a first embodiment, an example will be described in which the present invention is applied to a mobile robot used in an object transportation system installed in a warehouse, that is, a mobile manipulator 100. Note that the facilities to which the object transportation system is applied are not limited to warehouses, but include any facilities where similar functions are required.
[0014] (1.1 Configuration of the mobile manipulator) 1 is an external perspective view showing the overall configuration of a mobile manipulator 100 according to this embodiment. A coordinate system consisting of three mutually orthogonal axes (x-axis, y-axis, and z-axis) is displayed in the lower right of the figure, and hereinafter, the positive direction of the x-axis may be referred to as the forward direction, the negative direction as the backward direction, the positive direction of the y-axis as the right direction, the negative direction as the left direction, the positive direction of the z-axis as the upward direction, and the negative direction as the downward direction.
[0015] As is clear from the figure, the mobile manipulator 100 comprises a main body 10 having an overall shape of a roughly rectangular parallelepiped with long sides in the vertical direction, an articulated robot arm 30 attached to the top end (or top surface) of the main body 10, and an object manipulation unit 50 attached to the tip of the articulated robot arm 30. The left and right side surfaces of the main body 10 are parallel to the x-axis (xz plane), and the front and back surfaces are parallel to the y-axis (yz plane). In this embodiment, the articulated robot arm 30 and the object manipulation unit 50 are referred to separately, but they may also be referred to collectively, for example, simply as an articulated robot arm or an operating device.
[0016] As is clear from the figure, in this embodiment, the articulated robot arm unit 30 is disposed on the center line of the left-right width of the main body unit 10.
[0017] This configuration provides a good left-right weight balance for the mobile manipulator 100. Furthermore, the left-right width of the mobile manipulator 100 can be made smaller than when the articulated robot arm unit 30 is attached to the side.
[0018] On the front surface of the main body 10, object storage sections 15 (15-1, 15-2, ... 15-7 from the top), each having seven rectangular parallelepiped spaces for storing objects, are aligned vertically with their openings facing forward. Each space of the object storage sections 15 is large enough to store at least one object.
[0019] With this configuration, the object storage unit 15 has multiple storage spaces, so multiple objects can be transported simultaneously. In addition, the spaces for storing objects are arranged vertically, so the width of the mobile manipulator 100 can be reduced. This allows it to move through narrow passages, etc.
[0020] The articulated robot arm unit 30 is attached above (vertically above) the object storage unit 15.
[0021] According to this configuration, the articulated robot arm unit 30 can be used to access the object storage unit 15 from above.
[0022] A LiDAR device 13 is installed on the top surface of the main body 10 via an upside-down U-shaped rod-like support member 12 at a position higher than the main body 10 and in a manner that allows detection from a position higher than surrounding shelves, etc. The LiDAR device 13 is, for example, a LiDAR unit, etc., and can detect the distance, position, shape, etc. of an object.
[0023] With this configuration, sensing can be performed from a high position using the LiDAR device 13. This makes it possible to estimate the self-position even when various obstacles exist in the surroundings.
[0024] The bottom surface of the main body 10 is provided with a moving mechanism 20 consisting of two differential wheels (W1, W2) that are controlled and driven independently on the left and right sides. In addition, passive wheels W' that rotate passively are arranged at the four corners of the bottom surface.
[0025] With this configuration, a low-cost moving mechanism can be realized by utilizing the differential two wheels.
[0026] In this embodiment, the articulated robot arm unit 30 has five rotationally driven joints (J1 to J5). One end (or base end) of a rod-shaped first link 31 is rotatably and swingably connected to the upper end (or top surface) of the main body unit 10 via the first joint (J1). In this case, the rotation center axis of the first joint (J1) is perpendicular to the floor surface, and the rotation center axis of the second joint (J2) is a horizontal axis (or pitch axis) extending in the left-right direction.
[0027] One end (or base end) of the rod-shaped second link 32 is swingably connected to the other end (or tip) of the first link 31 via a third joint (J3). At this time, the rotation center axis of the third joint (J3) is a horizontal axis (or pitch axis) extending in the left-right direction.
[0028] One end (base end) of the third link 33, which is shorter and bent than the first link 31 and the second link 32, is swingably connected to the other end (or tip) of the second link 32 via a fourth joint (J4). At this time, the rotation center axis of the fourth joint (J4) is a horizontal axis (or pitch axis) extending in the left-right direction.
[0029] With this configuration, the hand position of the third link 33 can be freely positioned, thereby increasing the degree of freedom in the positioning of the object manipulation unit 50.
[0030] The object manipulator 50 is rotatably attached via a fifth joint (J5) to the tip of the third link 33. The rotation center axis of the fifth joint (J5) is parallel to the normal to the top surface of the object manipulator 50, and in the example shown in the figure, is parallel to the vertical axis.
[0031] In this embodiment, the object manipulator 50 has two drive joints (J6 to J7).
[0032] 2 is an enlarged perspective view of the exterior of object manipulator 50. In this embodiment, object manipulator 50 has a roughly U-shaped base body 51 that is laid on its side in the figure. A slide member 52 is slidably attached to one side of the bottom surface of base body 51 via a first linear joint (JL1) (or sixth joint (J6)). An end effector 53 is attached to the top surface of slide member 52.
[0033] In this embodiment, the end effector 53 is a gripper equipped with left and right claws (55L, 55R) and left and right drive units (551L, 551R) that linearly move the claws in the opening and closing directions. These drive units (551L, 551R) are interlocked and form a second linear joint (JL2) (or seventh joint (J7)). The left and right claws (55L, 55R) are equipped with sensors (not shown) that detect contact or force.
[0034] A first camera 56 is provided on the upper part of the base body 51 and is oriented in an axial direction parallel to the first linear axis (JL1). The first camera 56 has, for example, a function as an RGB camera and a function as a ToF (Time of Flight) camera. This first camera 56 can be used to recognize markers, objects, and the space (gaps) surrounding the objects.
[0035] A distance sensor 58 is provided near the center of the end effector 53, i.e., the gripper, and is oriented in the axial direction parallel to the first linear axis (JL1). By using this distance sensor 58, the relative distance between the object and the gripper can be detected. This makes it possible to detect whether slippage occurs between the object and the jaws 55 when gripping the object.
[0036] A second camera 57 is provided directly above the distance sensor 58 and oriented in an axial direction parallel to the first linear axis (JL1). The second camera 57 is, for example, a monochrome camera, and captures an image of an identifier such as a barcode attached to an object. Based on this captured image, for example, an identification or recognition process of the object or its contents is performed. Note that the second camera 57 may have a higher resolution and a narrower angle of view than the first camera 56.
[0037] It should be noted that the sensors attached to object manipulation unit 50 are not limited to these sensors (first camera 56, second camera 57, distance sensor 58). Therefore, various other known sensors may also be employed.
[0038] 3 is a functional block diagram of the mobile manipulator 100. As is clear from the diagram, the mobile manipulator 100 includes a control unit 101, a memory unit 102, a communication unit 103, a LiDAR device 13, a movement mechanism unit 20, an articulated robot arm unit 30, and an object manipulation unit 50, which are connected to each other via a bus.
[0039] The control unit 101 is a computing device such as a CPU, and executes various processes described below according to programs read from the storage unit 102. The storage unit 102 is a storage device such as a ROM, RAM, or flash memory, and stores programs and various data. The communication unit 103 is a communication unit for wireless communication, and transmits and receives information to and from external devices. The LiDAR device 13 is a sensor unit that acquires the distance, position, shape, etc. of the environment. The acquired information is stored in the storage unit 102, etc., and used by the control unit 101.
[0040] The articulated robot arm unit 30 is provided with an arm drive unit including an actuator used to drive the joints, and an arm sensor that acquires the state of the articulated robot arm unit 30, such as the joint angles.
[0041] The moving mechanism unit 20 is a trackless moving mechanism that does not require rails or the like, and is equipped with a wheel drive unit, which is a drive circuit for driving the drive wheels (W1, W2), and wheel sensors that detect the rotational state of the drive wheels (W1, W2). Information detected via the sensors is stored in the memory unit 102 or used by the control unit 101.
[0042] The object manipulator 50 is equipped with a claw driver to drive the joint (JL2) associated with the interlocking left and right claws (55L, 55R). It also has a linear axis driver as a drive circuit to drive the first linear joint (JL1). Additionally, the object manipulator 50 is equipped with a sensor to detect force or contact acting on the claws 55.
[0043] In addition, the object manipulation unit 50 is equipped with various sensors, namely, a first camera 56, a second camera 57, and a distance sensor 58, and information obtained through the sensors is stored in the memory unit 102 or used by the control unit 101.
[0044] The above configuration is an example, and various additions, changes, deletions, etc. may be made to the configuration. It may be modified to have the following configuration.
[0045] (1.2 Mobile Manipulator Operation) 4 is a flowchart related to the transition operation to the target position and orientation of the mobile manipulator 100. In this embodiment, the tool center point (TCP) set at the tip of the object manipulation unit 50 of the mobile manipulator 100 is set as the control point. Note that the control point may also be set at another position relative to the mobile manipulator 100.
[0046] In this embodiment, a spatial region having a substantially rectangular parallelepiped shape is set in front of the movement mechanism unit 20 far from the base of the articulated robot arm unit 30 .
[0047] As will be described later, this configuration makes it possible to prevent self-collisions in the area near the means of transportation where self-collisions are likely to occur. Note that the shape of the spatial area is not limited to a rectangular parallelepiped shape, and may be other shapes.
[0048] When the process starts, the control unit 101 performs a process of acquiring the target position and target posture of the TCP from the storage unit 102 or from the outside via the communication unit 103 (S10).
[0049] After this acquisition process, if the current position is within a predetermined spatial region (S1) (S11 YES), the control unit 101 performs a process to generate a via position and via posture (S12). The via position and via posture are outside the spatial region (S1) and are intermediate positions and postures between the current position and current posture of the TCP and the target position and target posture. Furthermore, these via position and via posture are positions and postures that can be reached from the current position and current posture by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0050] With this configuration, the TCP can be temporarily moved outside the spatial region (S1), further reducing the possibility of self-collision. Furthermore, since the object manipulator 50 can be transitioned to the via position and via posture simply by translating it, the possibility of self-collision due to rotation of the object manipulator 50 can be reduced.
[0051] After generating the via position and via posture, the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP to the generated via position and via posture (S13).
[0052] After this transition is completed, or if the current position of the TCP is not within the predetermined spatial region (S1) (S11 NO), the control unit 101 determines whether the target position of the TCP is within the predetermined spatial region (S1) (S15).
[0053] If the target position is inside the spatial region (S1) (S15 YES), a process is performed to generate a via position and via posture (S16). The via position and via posture are outside the spatial region (S1) and are intermediate positions and postures between the current position and posture or the via position and via posture of the TCP and the target position and target posture. Furthermore, these via position and via posture are positions and postures that can be reached by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0054] With this configuration, the TCP can be transitioned to a position and posture that are outside the spatial domain (S1) and that reduce the possibility of self-collision in the subsequent transition to the target position and target posture.
[0055] After generating the via position and via posture, the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP to the generated via position and via posture (S17). This transition process can use various techniques, which will be described later, but for example, the transition may be performed by finding the joint displacement amount using inverse kinematics. The same applies to the transition process described later.
[0056] After this transition is completed, the control unit 101 performs a process of transitioning the TCP from the via position and via posture to the target position and target posture (S18). After the transition process to the target position and target posture is completed, the process ends. This allows the TCP to finally reach the target position and target posture after passing through the via positions and via postures.
[0057] 5 is an explanatory diagram relating to an example in which the current position is included in a predetermined spatial region (S1). Fig. 5(A) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the initial position and initial posture, Fig. 5(B) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the via position and via posture, and Fig. 5(C) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the target position and target posture.
[0058] In the figure (A), the current position of the TCP is indicated by point P1. The acquired (S10) target position is indicated by point P2. In the example of the figure, the target position (point P2) is outside the predetermined spatial region (S1), but the current position (point P1) is included within the predetermined spatial region (S1). Therefore, as indicated by point P3 in the figure, a via position and via posture are generated outside the spatial region (S1) (S11 YES, S12). The mobile manipulator 100 performs processing to transition the TCP, which is in the current position and current posture, to the via position and via posture (S13).
[0059] Figure 1B shows the mobile manipulator 100 in a state where the transition to the via position and via posture is complete (points P1 and P3 are aligned). At this time, the via position and via posture can be reached from the initial position and initial posture by simply translating vertically upward, and there is no need to rotate the terminal rotation axis (J5). After the transition process to the via position and via posture is complete, the control unit 101 performs a process to transition the TCP at the via position and via posture to the target position and target posture (S15 NO, S18).
[0060] FIG. 10C shows the mobile manipulator 100 in a state where the transition to the target position and target posture has been completed (point P1 and point P2 are aligned).
[0061] 6 is an explanatory diagram relating to an example in which the target position is included in a predetermined spatial region (S1). Fig. 6(A) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the initial position, Fig. 6(B) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the via position and via posture, and Fig. 6(C) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the target position and target posture.
[0062] In the figure (A), the current position of the TCP is indicated by point P1. The acquired (S10) target position is indicated by point P2. The target position (point P2) is contained within a predetermined spatial region (S1). Therefore, as indicated by point P3 in the figure, a via position and via posture are generated outside the spatial region (S1) (S11 NO, S15 YES, S16). The mobile manipulator 100 performs processing to transition the TCP, which is in the current position and current posture, to the via position and via posture (S17).
[0063] Figure 1B shows the mobile manipulator 100 in a state where the transition to the via position and via posture is complete (point P1 and point P3 are aligned). At this time, the target position and target posture can be reached from the via position and via posture by simply translating vertically downward, and there is no need to rotate the terminal rotation axis (J5). After the transition process to the via position and via posture is complete, the control unit 101 performs a process to transition the TCP at the via position and via posture to the target position and target posture (S18).
[0064] FIG. 10C shows the mobile manipulator 100 in a state where the transition to the target position and target posture has been completed (point P1 and point P2 are aligned).
[0065] 7 is an explanatory diagram relating to an example in which both the current position and the target position are included in a predetermined spatial region (S1). Figure 7(A) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in the initial position, Figure 7(B) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in a first via position and via posture, Figure 7(C) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in a second via position and via posture, and Figure 7(D) is an explanatory diagram showing the mobile manipulator 100 when the TCP is in a target position and target posture.
[0066] In the same figure (A), the current position of the TCP is indicated by point P1. The acquired (S10) target position is indicated by point P4. In the same figure, the current position (point P1) of the TCP is included in a predetermined spatial region (S1). (Note that although the spatial region (S1) is set in front of the movement mechanism unit 20 as in Figure 5 or Figure 6, it is omitted from the illustration for ease of viewing.) Therefore, as indicated by point P2 in the same figure, a first via position and via posture are generated outside the spatial region (S1) (S11YES, S12). The mobile manipulator 100 performs a process of transitioning the TCP from its current position and current posture to the via position and via posture (S13).
[0067] Figure 1B shows the mobile manipulator 100 after completing the transition to the first via position (point P2) and via posture (point P1 and point P2 coincide). At this time, the target position (point P4) is included in the spatial domain (S1). Therefore, as shown by point P3 in the figure, a second via position and via posture are generated outside the spatial domain (S1) (S15 YES, S16). At this time, the target position (point P2) and target posture can be reached from the second via position (point P3) and via posture by simply translating vertically downward, without the need to rotate the terminal rotation axis (J5). The mobile manipulator 100 then performs a process of transitioning the TCP from the first via position and via posture to the second via position and via posture (S17).
[0068] 10C shows the mobile manipulator 100 in a state where the transition to the second via position (point P3) and via posture is completed (point P1 and point P3 are coincident). After that, the mobile manipulator 100 performs a process to transition the TCP at the second via position and via posture to the target position (point P2) and target posture (S18).
[0069] 10D shows the mobile manipulator 100 in a state where the transition to the target position and the target posture is completed (point P1 and point P4 are coincident). In this way, even if only one spatial region is set, multiple via points may be generated.
[0070] According to this configuration, an operating device including the end effector and the articulated robot arm unit 30 is used, eliminating the need for a mechanism that encompasses the entire object to be held, allowing the hardware of the mobile manipulator 100 to be miniaturized. In addition, at this time, by using ingenious control, there is no risk of the end effector or the object held by the end effector colliding with any part of the mobile manipulator 100. In other words, it is possible to provide a mobile manipulator 100 that can improve the efficiency of facility utilization, such as by improving volumetric efficiency, and can be operated safely.
[0071] In this embodiment, the substantially rectangular parallelepiped spatial region (S1) is set in front of the movement mechanism unit 20, far from the base of the articulated robot arm unit 30, but the present invention is not limited to this configuration.
[0072] 8A and 8B are explanatory diagrams relating to other examples of setting the spatial domain, where (A) in the figure shows a first modified example, and (B) in the figure shows a second modified example.
[0073] In the same figure (A), a spatial region (S1') is set near the opening of the object storage unit 15. When the target position is set near the opening of the object storage unit 15 as shown by P2, the via position and via posture are set to the position of P3.
[0074] In FIG. 10B, the spatial region (S1″) is set to be thicker than in FIG. 10A so as to encompass the protruding portion of the object 71 stored in the object storage section 15. In this case, the via position and via posture are set outside the spatial region (S1″) at position P3.
[0075] With this configuration, self-collisions can be prevented in areas near the openings through which objects are inserted and removed, where self-collisions are likely to occur. Note that the location where the spatial region is set is not limited to these examples. Therefore, the spatial region can be set in any configuration that constitutes the mobile manipulator 100, such as near or inside other parts of the main body 10, the support member 12, etc.
[0076] In this embodiment, the configuration is such that transition to the via position and orientation is performed sequentially each time a via position and orientation is generated, but the present invention is not limited to such a configuration. Therefore, for example, the via position and orientation may be temporarily stored, and then transition may be performed collectively for some or all of them.
[0077] Fig. 9 is a modified example of the flowchart (Fig. 4) regarding the transition operation to the target position and orientation of the mobile manipulator 100. In the figure, each time a via position and orientation is generated, the via position and orientation are generated and stored in order (S12, S15), but transition to that position and orientation is not made immediately thereafter, and instead, a process of transitioning in order to the via position and orientation that were last collectively stored is performed (S20).
[0078] With this configuration, even when there are multiple intermediate positions and postures for the TCP, the posture of the mobile manipulator 100 can be transitioned more smoothly.
[0079] (2. Second Embodiment) In the second embodiment, a technique is described in which a via position and via attitude are generated when a target position or a current position exists in a specified spatial region, and furthermore, a rotation restriction on a specified rotation axis is introduced, thereby further reducing the possibility of self-collision.
[0080] (2.1 Configuration of the mobile manipulator) The configuration of the mobile manipulator 100 according to this embodiment is the same as the configuration according to the first embodiment, and therefore a detailed description thereof will be omitted. In this embodiment, a rotation restriction region (S2), which is also a spatial region of a substantially rectangular parallelepiped shape, is set inside a via point generation region (S1) of a substantially rectangular parallelepiped shape that corresponds to the spatial region (S1) of the first embodiment. Note that the shapes of these spaces are not limited to rectangular parallelepiped shapes and may be set in other shapes. Furthermore, after the rotation restriction region (S2) has been set, the via point generation region (S1) may be set so as to encompass all or part of it.
[0081] The set positions of the spatial regions (S1, S2) are not limited to the example of this embodiment, and can be set in any configuration constituting the mobile manipulator 100, for example, near or inside other parts of the main body 10, the support member 12, etc.
[0082] 2.2 Mobile Manipulator Operation 10 is a flowchart showing the transition operation to the target position and orientation of the mobile manipulator 100 according to this embodiment. Note that in this embodiment as well, the tool center point (TCP) set at the tip of the object manipulation unit 50 of the mobile manipulator 100 is set as the control point (or reference position and orientation).
[0083] When the process starts, the control unit 101 performs a process of acquiring a target position and a target attitude of the TCP (S30), similar to the first embodiment.
[0084] After this target position and orientation acquisition process, the control unit 101 determines whether the current position of the TCP is within the via point generation area (S1) (S31). If the current position of the TCP is not within the via point generation area (S1) (S31 NO), the control unit 101 determines whether the target position is within the via point generation area (S1) (S35).
[0085] If the current position of the TCP is within the via point generation area (S1) (S31 YES), it is determined whether the via point generation area (S1) includes the rotation restriction area (S2) (S32). If the via point generation area (S1) does not include the rotation restriction area (S2) (S32 NO), the control unit 101 performs processing to generate a via position / posture (S33). This via position / posture is outside the via point generation area (S1) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this via position / posture may be a position and posture that can be reached from the current position / posture by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0086] On the other hand, if the via point generation region (S1) includes the rotation restriction region (S2) (S32 YES), the control unit 101 performs processing to generate a via position / posture (S34). This via position / posture is outside the via point generation region (S1) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. Furthermore, in order to transition the TCP to the via position / posture without rotating the distal joint (J5) of the articulated robot arm unit 30, the via position / posture is set to a position / posture that does not require rotation of the end effector 53 in the process of transition to the target position / posture, i.e., a position / posture obtained by translating the end effector 53.
[0087] With this configuration, the TCP can be temporarily moved outside the spatial region (S1), further reducing the possibility of self-collision. Furthermore, since the object manipulator 50 can be transitioned to the via position and via posture simply by translating it, the possibility of self-collision due to rotation of the object manipulator 50 can be reduced.
[0088] If the current position of the TCP is not within the via point generation area (S1) (S31 NO), or after the generation process of the via position / posture of the TCP (S33 or S34), the control unit 101 determines whether the target position is within the via point generation area (S1) (S35). If the target position is not within the via point generation area (S1) (S35 NO), a transition process to the via position / posture (S40) is executed.
[0089] If the target position is within the via point generation area (S1) (YES in S35), it is determined whether the via point generation area (S1) includes the rotation restriction area (S2) (S36). If the via point generation area (S1) does not include the rotation restriction area (S2) (NO in S36), the control unit 101 performs processing to generate a via position / posture (S37). This via position / posture is outside the via point generation area (S1) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this via position / posture may be a position and posture that can be reached to the target position / posture by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0090] If the via point generation region (S1) includes the rotation restriction region (S2) (S36 YES), the control unit 101 performs processing to generate a via position / posture (S38). This via position / posture is outside the via point generation region (S1) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. Furthermore, in order to transition the TCP to the target position / posture without rotating the distal joint (J5) of the articulated robot arm unit 30, the via position / posture is set to a position / posture that does not require rotation of the end effector 53 in the process of transition to the target position / posture, i.e., a position / posture obtained by translating the end effector 53.
[0091] With this configuration, the existence of waypoints can further reduce the possibility of self-collision. Furthermore, since object manipulator 50 can be transitioned to the target position and orientation simply by translating it, the possibility of self-collision due to rotation of object manipulator 50 can be reduced.
[0092] If the target position of the TCP is not within the via point generation area (S1) (S35 NO), or after the process of generating the via position / posture of the TCP (S37 or S38), the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP to the via position / postures that have been generated so far in order (S40).
[0093] After the transition process to the intermediate position / posture is completed, the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP from the final intermediate position / posture to the target position / posture (S41). After this process, the process ends.
[0094] 11 is an explanatory diagram of an example of setting a first spatial region (S1) and a second spatial region (S2). As is clear from the diagram, the second spatial region (S2) is provided inside the first spatial region (S1).
[0095] In the example shown in the figure, the current position (point P1) of the TCP is within the via point generation area (S1) (S30, S31: YES), and the via point generation area (S1) includes a rotation restriction area (S2) indicated by a dashed line (S32: YES). Therefore, the control unit 101 performs processing to generate a via position / posture (P3) (S34) so that rotation of the end effector 53 is not required in transition from the current position / posture of the TCP to the via position / posture. Note that in the example shown in the figure, the target position (point P2) is not within the via point generation area (S1) (S35: NO). Therefore, processing is executed to transition the TCP in the order of P1 → P3 → P2 (S40, S41).
[0096] The two spatial regions (S1, S2) can be set in various ways in addition to those according to this embodiment.
[0097] 12A and 12B are explanatory diagrams relating to other setting examples of two spatial regions (S1, S2), where (A) in the figure is a first modified example, and (B) in the figure is a second modified example.
[0098] In the same figure (A), the way point generation area (S1') is set near the opening of the object storage unit 15. Furthermore, the rotation restriction area (S2') is set inside the way point generation area (S1') and even closer to the main body unit 10 or the object storage unit 15. When the target position is set near the opening of the object storage unit 15 as shown by P2, the way position is set to position P3. This makes it possible to prevent the object manipulating unit 50 from colliding with the object storage unit 15. Furthermore, because the rotation of the object manipulating unit 50 near the main body unit 10 is restricted, the possibility of a self-collision can be further reduced.
[0099] In the same figure (B), the way point generation area (S1'') is set to be thicker than in the case of the same figure (A) so as to encompass the protruding part of the object 71 stored in the object storage unit 15. Furthermore, the rotation restriction area (S2'') is set inside the way point generation area (S1'') and further along the surface shape of the main body unit 10 or the object 71. This makes it possible to prevent the object manipulating unit 50 from self-colliding with the object storage unit 15 or the object 71. Furthermore, since the rotation of the object manipulating unit 50 in the vicinity of the main body unit 10 or the object 71 is restricted, the possibility of self-collision can be further reduced.
[0100] (3. Third Embodiment) In this embodiment, an example will be described in which a plurality of regions for generating via points are provided in space.
[0101] (3.1 Configuration of the mobile manipulator) The configuration of the mobile manipulator 100 according to this embodiment is the same as that according to the first embodiment, and therefore a detailed description thereof will be omitted. In this embodiment, a plurality (two) of approximately rectangular parallelepiped waypoint generation regions (S3, S4) corresponding to the spatial region (S1) in the first embodiment are arranged in space.
[0102] 3.2 Mobile Manipulator Operation 13 is a flowchart showing the transition operation to the target position and orientation of the mobile manipulator 100 according to this embodiment. Note that in this embodiment as well, the tool center point (TCP) set at the tip of the object manipulation unit 50 of the mobile manipulator 100 is set as the control point (or reference position and orientation).
[0103] When the process starts, the control unit 101 performs a process of acquiring a target position and a target attitude of the TCP (S50), similarly to the first embodiment.
[0104] After this process of acquiring the target position and posture, the control unit 101 determines whether or not the current position of the TCP is within the first spatial region (S3) (S51). If the current position of the TCP is not within the first spatial region (S3) (NO in S51), the control unit 101 proceeds to the next process, that is, a process of determining whether or not the current position of the TCP is within the second spatial region (S4) (S53).
[0105] If the current position of the TCP is within the first spatial region (S3), the control unit 101 performs processing to generate an intermediate position / posture corresponding to the first spatial region (S52). This intermediate position / posture is outside the first spatial region (S3) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this intermediate position / posture may be a position and posture that can be reached from the current position / posture by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0106] If the current position of the TCP is not within the first spatial region (S3) (S51 NO), or after generating the intermediate position and posture corresponding to the first spatial region (S52), the control unit 101 performs a determination process (S53) as to whether the current position of the TCP is within the second spatial region (S4).
[0107] If the current position of the TCP is not in the second spatial region (S4) (S53 NO), the control unit 101 proceeds to the next process, that is, a process of determining whether or not the target position of the TCP is in the first spatial region (S3) (S56).
[0108] If the current position of the TCP is within the second spatial region (S4) (S53 YES), the control unit 101 performs processing to generate an intermediate position / posture corresponding to the second spatial region (S55). This intermediate position / posture is outside the second spatial region (S4) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this intermediate position / posture may be a position and posture that can be reached from the current position / posture by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0109] If the current position of the TCP is not within the second spatial region (S4) (S53 NO), or after generating the intermediate position and posture corresponding to the second spatial region (S55), the control unit 101 performs a determination process (S56) as to whether the target position of the TCP is within the first spatial region (S3).
[0110] If the target position of the TCP is within the first spatial region (S3), the control unit 101 performs processing to generate an intermediate position / posture corresponding to the first spatial region (S57). This intermediate position / posture is outside the first spatial region (S3) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this intermediate position / posture may be a position and posture that allows the target position / posture to be reached by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0111] If the target position of the TCP is not within the first spatial region (S3) (NO in S56), or after generating the intermediate position and posture corresponding to the first spatial region (S57), the control unit 101 performs a determination process (S58) as to whether the target position of the TCP is within the second spatial region (S4).
[0112] If the target position of the TCP is not in the second space region (S4) (S58 NO), the control unit 101 proceeds to the next process, that is, a transition process to the intermediate position and posture of the TCP (S61).
[0113] If the target position of the TCP is within the second spatial region (S4) (S58 YES), the control unit 101 performs processing to generate an intermediate position / posture corresponding to the second spatial region (S59). This intermediate position / posture is outside the second spatial region (S4) and is an intermediate position / posture between the current position / posture and the target position / posture of the TCP. In this case, this intermediate position / posture may be a position and posture that can be reached by simply translating the object manipulation unit 50 without rotating the distal joint (J5) of the articulated robot arm unit 30.
[0114] If the target position of the TCP is not within the second spatial region (S4) (NO in S58), or after generating the intermediate positions and postures corresponding to the second spatial region (S59), the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP to the generated intermediate positions and postures in order (S61).
[0115] After the transition process to the via point is completed, the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to perform a process of transitioning the TCP from the final via position / posture to the target position / posture (S62), after which the process ends.
[0116] 14 is an explanatory diagram showing an example in which two via point generation areas are arranged in space. As is clear from the figure, in the example shown in the figure, the via point generation areas are set in front of the movement mechanism unit 20 (S3) and near the opening of the object storage unit 15 (S4). The attitude shown in the figure is the initial attitude.
[0117] In the example shown in the figure, since the current position (point P1) of the TCP is within the first spatial region (S3) but not within the second spatial region (S4) (S50, S51 YES, S53 NO), the control unit 101 generates a via position (point P2) and orientation corresponding to the first spatial region (S3) (S52). Thereafter, since the target position (point P4) of the TCP is not within the first spatial region (S3) but within the second spatial region (S4) (S56 NO, S58 YES), the control unit 101 generates a via position (point P3) and orientation corresponding to the second spatial region (S4) (S59).
[0118] Therefore, the control unit 101 controls the articulated robot arm unit 30 and / or the object manipulation unit 50 to transition the TCP to the generated intermediate positions and postures in order (point P2 → point P3) (S61), and then performs processing to transition the TCP to the final target position (point P4) and posture (S62).
[0119] With this configuration, even when a plurality of spatial regions for generating via points are set, self-collisions can be effectively prevented.
[0120] The waypoint generation area can be set in various ways.
[0121] FIG. 15 is an explanatory diagram showing a case where via point generation areas overlap. In the example of the figure, the via point generation areas are set in front of the movement mechanism unit 20 (S3) and near the opening of the object storage unit 15 (S4). In addition, the first spatial area (S3') and the second spatial area (S4') partially overlap. In this embodiment, this overlapping area is set as a third spatial area (S5) and is a new via point generation area. That is, in the example of the figure, when the current position / posture or the target position / posture of the TCP is inside the first spatial area (S3'), the second spatial area (S4'), or the third spatial area (S5), the control unit 101 generates a corresponding via position / posture.
[0122] (4. Modifications) The present invention can be implemented in various modifications.
[0123] Although the above-described embodiment employs a gripper as an end effector, the present invention is not limited to such a configuration and may employ other devices such as a suction mechanism, a hook mechanism, or a chuck mechanism.
[0124] With this configuration, it is possible to freely hold or release an object according to the target object.
[0125] Although the embodiments of the present invention have been described above, the above embodiments merely illustrate some of the application examples of the present invention, and the technical scope of the present invention is not intended to be limited to the specific configurations of the above embodiments. Furthermore, the above embodiments can be combined as appropriate within the scope of not causing any contradiction. [Industrial Applicability]
[0126] The present invention can be used in industries that manufacture robots and the like. [Explanation of symbols]
[0127] 10 Main body 20 Transition Mechanism 30 Articulated robot arm 50 Object operation section 100 Mobile Manipulator
Claims
1. an end effector for holding or releasing an object; an operating device including an articulated robot arm for translating and rotating the end effector; a control unit that controls the operation device to transition a reference point defined for the end effector or the operation device to a target position and a target posture; A robot comprising: one or more first spatial regions are defined in the vicinity of the robot; The control unit A robot that controls, when either or both of the current position of the reference point and the target position belong to the first spatial region, to transition the reference point to one or more via positions and via postures and then to the target position and target posture.
2. The robot according to claim 1 , wherein the via position is set outside the first spatial region.
3. The robot according to claim 1 , wherein the via position and the via posture are a position and a posture obtained by translating the end effector, which is at the current position or the target position, in a predetermined axial direction.
4. Further including a means of transportation; The robot according to claim 1 , wherein the first spatial region is located near the locomotion means.
5. further comprising an object storage section for storing the object; The robot according to claim 1 , wherein the first spatial region is disposed near an opening of the object storage portion.
6. a second spatial region is further provided in the vicinity of the robot; The control unit 2. The robot according to claim 1, wherein, when the second spatial region is partly or entirely included in the first spatial region, the robot generates the via position and via posture that transitions the reference point from a current position and current posture of the reference point to the via position and via posture, or transitions the reference point from the via position and via posture to the target position and the target posture, without rotating the end effector.
7. The robot according to claim 1 , wherein the end effector is one of a gripper, a suction mechanism, a hook mechanism, and a chuck mechanism.
8. The robot according to claim 1 , wherein the motion device further comprises a linear motion mechanism that imparts linear translational motion to the end effector.
9. The robot of claim 1 , wherein the reference point is a tool center point.
10. an end effector for holding or releasing an object; an operating device including an articulated robot arm for translating and rotating the end effector; a control unit that controls the operation device to transition a reference point defined for the end effector or the operation device to a target position and a target posture; A method for controlling a robot, comprising: one or more first spatial regions are defined in the vicinity of the robot; determining whether either the current position of the reference point or the target position, or both, belong to the first spatial region; a step of controlling the reference point to transition to one or more via positions and via attitudes and then to the target position and target attitude when it is determined that either the current position of the reference point or the target position or both belong to the first spatial region; A control method comprising:
11. an end effector for holding or releasing an object; an operating device including an articulated robot arm for translating and rotating the end effector; a control unit that controls the operation device to transition a reference point defined for the end effector or the operation device to a target position and a target posture; A robot control program comprising: one or more first spatial regions are defined in the vicinity of the robot; determining whether either the current position of the reference point or the target position, or both, belong to the first spatial region; a step of controlling the reference point to transition to one or more via positions and via attitudes and then to the target position and target attitude when it is determined that either the current position of the reference point or the target position or both belong to the first spatial region; A control program with
Citation Information
Patent Citations
Obstacle avoidance method, device and warehouse robot
JP2022539936A