Work robot system, marker member for work robot system, work robot system control method, travel program generation device, travel program generation method, and program

The work robot system with a cart, manipulator, and vision sensor, guided by floor markers, addresses the cost and precision issues of conventional AGVs, enabling efficient and accurate robot navigation with reduced equipment and operator intervention.

WO2026048587A1PCT designated stage Publication Date: 2026-03-05MITSUBISHI HEAVY IND LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-08-19
Publication Date
2026-03-05

Smart Images

  • Figure JP2025028969_05032026_PF_FP_ABST
    Figure JP2025028969_05032026_PF_FP_ABST
Patent Text Reader

Abstract

This work robot system comprises: a work robot including a wagon capable of traveling on a floor surface, a manipulator mounted on the wagon and capable of arbitrarily changing the position and attitude of the fore end thereof, and a vision sensor attached to the fore end of the manipulator; and a marker member provided in a predetermined position on the floor surface. The marker member includes a post extending upright from the floor surface, and a marker which is provided at the upper end of the post and includes information related to position on the floor surface. The work robot includes a control device that controls travel of the wagon on the basis of the marker included in an image captured by the vision sensor.
Need to check novelty before this filing date? Find Prior Art

Description

Working robot system, marker member for working robot system, control method for working robot system, travel program generation device, travel program generation method, and program

[0001] This disclosure relates to a working robot system, a marker member for a working robot system, a control method for a working robot system, a travel program generation device, a travel program generation method, and a program. This application claims priority to Japanese Patent Application No. 2024-148420, filed on August 30, 2024, the contents of which are incorporated herein by reference.

[0002] It has been considered to mount a robot (manipulator) on an automated guided vehicle (AGV) and automatically transport the robot to a work position (see, for example, Patent Document 1).Also, a system has been considered in which the robot is mounted on a base and the movement of the base is controlled by a robot control device (see, for example, Patent Document 2).

[0003] Japanese Patent No. 2680298 Japanese Patent No. 7395877

[0004] Meanwhile, AGVs equipped with robots travel autonomously using guidance methods such as magnetic guidance and optical guidance. Conventional commercially available AGVs are generally equipped with sensors tailored to the guidance method and various specialized functions for autonomous travel control, making them highly sophisticated and expensive. Therefore, when a commercially available AGV is introduced into a factory, it may include functions that are not used in the factory (such as automatic transport scheduling and map creation functions), which could result in an equipment configuration and cost that are excessive for the intended use.

[0005] Furthermore, if the AGV cannot move precisely to the correct working position, the relative positions of the robot and the workpiece will be misaligned, making it difficult for the robot to move the tool to the correct working point on the workpiece and perform the work, which will reduce the accuracy of the work performed by the robot.

[0006] Furthermore, for example, Patent Document 2 describes a system in which, if an operator determines that there is a large discrepancy between the target position and the actual stopping position, the robot is returned to its original position and the robot is made to retry moving to the target position. Therefore, in the system described in Patent Document 2, the operator must constantly monitor the moving robot and perform operations to make the robot restart its movement, which increases the operator's work costs.

[0007] The present disclosure has been made to solve the above-mentioned problems, and aims to provide a work robot system capable of moving a work robot with a simple and low-cost configuration, a marker member for a work robot system, a control method for a work robot system, a driving program generation device, a driving program generation method, and a program.

[0008] In order to solve the above problems, the work robot system disclosed herein comprises a work robot including a cart capable of traveling on a floor surface, a manipulator mounted on the cart and capable of arbitrarily changing the position and orientation of the tip, and a vision sensor attached to the tip of the manipulator, and a marker member provided at a predetermined position on the floor surface, the marker member comprising a post rising up from the floor surface and a marker provided at the upper end of the post and containing information about its position on the floor surface, and the work robot comprises a robot control device (control device) 10 that controls the traveling of the cart based on the marker contained in an image captured by the vision sensor.

[0009] The marker component for a work robot system according to the present disclosure is a marker component used in a work robot system that includes a cart that can run on a floor surface, a manipulator that is mounted on the cart and can arbitrarily change the position and posture of the tip, and a vision sensor attached to the tip of the manipulator, and includes a post that is provided at a predetermined position on the floor surface and rises upward from the floor surface, and a marker that is provided at the upper end of the post and contains information regarding its position on the floor surface.

[0010] A control method for a work robot system according to the present disclosure is a control method for a work robot system, and includes the steps of causing the cart to travel along a specified path, photographing the marker with the vision sensor, and controlling the travel of the cart based on the marker included in the image photographed by the vision sensor.

[0011] According to the working robot system, marker member for the working robot system, and control method for the working robot system disclosed herein, the working robot can be moved with a simple and low-cost configuration.

[0012] FIG. 1 is a diagram showing the overall configuration of a robot system according to a first embodiment. FIG. 2 is a diagram showing the work robot according to the first embodiment as viewed from a direction different from that of FIG. 1. FIG. 3 is a perspective view showing a marker member according to the first embodiment. FIG. 4 is a block diagram showing the functional configuration of a robot control device and a travel control device according to the first embodiment. FIG. 5 is a flowchart showing an example of a cart travel process by the robot system according to the first embodiment. FIG. 6 is a diagram showing an example of route information according to the first embodiment. FIG. 7 is a diagram for explaining the travel process of the robot system according to the first embodiment. FIG. 8 is a diagram showing an example of the hardware configuration of a robot control device and a travel control device. FIG. 9 is a block diagram showing the functional configuration of a travel program generator and a robot control device according to a second embodiment. FIG. 10 is a flowchart showing an example of a process by the travel program generator according to the second embodiment. FIG. 11 is a diagram for explaining the process by the travel program generator according to the second embodiment. FIG. 12 is a flowchart showing an example of a cart travel process by the robot system according to the second embodiment. FIG. 13 is a diagram for explaining the process by the travel program generator according to the third embodiment. FIG. 14 is a first diagram for explaining the process by the travel program generator according to the fourth embodiment. FIG. 15 is a second diagram for explaining the process by the travel program generator according to the fourth embodiment.

[0013] Hereinafter, embodiments for carrying out a working robot system, a marker member for a working robot system, and a control method for a working robot system according to the present disclosure will be described with reference to the accompanying drawings. However, the present disclosure is not limited to these embodiments.

[0014] <First Embodiment> (Overall Configuration of Working Robot System) Fig. 1 is a diagram showing the overall configuration of a working robot system according to a first embodiment. As shown in Fig. 1, working robot system 100 comprises a working robot 1, a marker member 7, and an operation PC 3. Working robot 1 automatically performs work instructed by an operator in a work space such as a factory or warehouse. Working robot 1 comprises a cart 2, a manipulator 11, a vision sensor 12, and a robot control device 10.

[0015] (Carriage Configuration) FIG. 2 is a view of the work robot according to the first embodiment, viewed from a different direction than FIG. 1 . The cart 2 is, for example, an automated guided vehicle (AGV). In this embodiment, the cart 2 is rectangular in plan view. As shown in FIGS. 1 and 2 , the cart 2 has a top plate 2t and side surfaces 2s. The top plate 2t faces upward and may be capable of carrying items to be transported by the work robot 1. The height of the top plate 2t from the floor surface F is set to, for example, a range of approximately 10 cm to 30 cm. The side surfaces 2s extend downward from the four sides of the top plate 2t. As shown in FIG. 1 , the cart 2 includes a travel control device 20, a drive unit 21, wheels 23, and a stopper 24.

[0016] As will be described in detail later, the travel control device 20 controls the drive device 21 so that the carriage 2 moves (travels), stops, changes speed, etc. in accordance with travel instructions from the robot control device 10.

[0017] The drive unit 21 is a travel motor that operates the wheels 23 of the bogie 2. In this embodiment, the wheels 23 are Mecanum wheels (registered trademark) having multiple rollers, and the drive unit 21 has one travel motor for each wheel 23. The drive unit 21 changes the combination of wheels 23 to rotate and the rotation speed and rotation direction of each wheel 23 in accordance with control commands from the travel control device 20. This allows the bogie 2 to move in any direction. Note that in other embodiments, the wheels 23 may be general wheels instead of Mecanum wheels. In this case, the drive unit 21 has a travel motor that rotates the wheels and a steering mechanism that changes the orientation of the wheel axles. Note that in the following description, the main traveling direction of the bogie 2 driven by the multiple wheels 23 (Mecanum wheels) may be referred to as the X-axis direction, and the width direction of the bogie 2 that intersects with the X-axis direction in a horizontal plane may be referred to as the Y-axis direction.

[0018] The stopper 24 is a device for fixing the carriage 2 so that it does not move after the carriage 2 has moved to a designated position.

[0019] The dolly 2 may further include a travel assistance sensor (not shown). The travel assistance sensor is a sensor for detecting the position and traveling direction of the dolly 2 so that the dolly 2 can travel autonomously when there is no travel instruction from the robot control device 10 (described later). In this embodiment, the travel assistance sensor has a position detection sensor that detects the amount of movement of the dolly 2 in the horizontal direction (X-axis direction and Y-axis direction). The position detection sensor is a sensor that uses the same technology as a so-called optical mouse, and reads the pattern on the floor surface, etc., to detect the amount of movement of the dolly 2 in the X-axis direction and Y-axis direction. The travel assistance sensor may also include a gyrocompass that detects the traveling direction of the dolly 2.

[0020] The bogie 2 is also provided with obstacle detection sensors 26. The obstacle detection sensors 26 detect obstacles around the bogie 2. The bogie 2 is configured to slow down or stop when the obstacle detection sensors 26 detect the presence of an obstacle within a preset range while traveling under the control of the travel control device 20. In this embodiment, the obstacle detection sensors 26 are provided, for example, at two diagonally positioned corners of the bogie 2, which has a rectangular shape in a plan view. The number and locations of the obstacle detection sensors 26 can be changed as appropriate.

[0021] (Configuration of manipulator and vision sensor) As shown in Figures 1 and 2, the manipulator 11 is mounted on the cart 2. In this embodiment, the manipulator 11 is provided outside the top plate 2t of the cart 2 in a plan view. In this embodiment, the work robot 1 has a support base 15 that supports the manipulator 11. The support base 15 is provided so as to protrude outside the top plate 2t of the cart 2 in a plan view. The support base 15 is provided on the cart 2 so as to protrude to one side in the width direction from the upper end of a side surface 2s on one side in the width direction.

[0022] The manipulator 11 is mounted on a support base 15. The manipulator 11 is an articulated robot arm having multiple joints. The manipulator 11 can rotate each joint to arbitrarily change the position and orientation of the tip 11a. Note that the configuration of the manipulator 11, such as the number of joints, is not limited in any way and may have any configuration.

[0023] A tool 13 is detachably attached to the tip 11a of the manipulator 11. The tool 13 is an implement for performing various tasks. Tasks performed by the working robot 1 include, for example, welding, assembly tasks such as screwing and drilling, picking tasks such as grasping and moving parts, finishing, ultrasonic inspection, and visual inspection. A tool 13 appropriate for the task is attached to the tip 11a of the manipulator 11.

[0024] Vision sensor 12 is attached to the tip 11a of manipulator 11. Vision sensor 12 is a camera that captures images of the surroundings of work robot 1. Figure 1 shows an example in which vision sensor 12 has a CCD camera 12A and a 3D camera 12B. Vision sensor 12 is capable of capturing images of landmarks L provided in the area in which work robot 1 travels. In this embodiment, guide lines L1 and markers L2 are provided as the landmarks L.

[0025] (Configuration of guide lines) Guide lines L1 are provided on the floor surface F of the area in which the work robot 1 travels. Guide lines L1 extend in a predetermined direction on the floor surface F to guide the direction in which the work robot 1 moves.

[0026] (Configuration of Marker Member) Figure 3 is a perspective view showing the marker member according to the first embodiment. As shown in Figures 1 to 3, the marker member 7 is provided at a predetermined position on the floor surface F. A plurality of marker members 7 are provided, for example, at positions that overlap with the guide line L1, positions along the path of the work robot 1, positions where the work robot 1 stops, positions where the work robot 1 changes its direction of travel, etc. In this embodiment, a plurality of marker members 7 are provided at predetermined intervals in the extension direction of the guide line L1, for example. Each of the plurality of marker members 7 includes a post 71 and a marker L2.

[0027] The post 71 rises upward from the floor surface F. The post 71 is formed, for example, in the shape of a column extending in the vertical direction. The post 71 may also be formed, for example, in the shape of a wall (plate) extending in the vertical direction. The post 71 has an upward surface 71t facing upward. Furthermore, the post 71 is rectangular or polygonal when viewed from above, and has multiple side surfaces 71s facing laterally, which are directions intersecting the vertical direction.

[0028] The marker L2 is provided at the upper end of the post 71. The marker L2 includes information about its position on the floor surface F. In this embodiment, the marker L2 is, for example, a QR code (registered trademark). In this embodiment, the marker L2 includes an upper marker L2a and a side marker L2b. The upper marker L2a is provided on the upward surface 71t of the post 71. The side marker L2b is provided on at least one side surface 71s of the multiple side surfaces 71s of the post 71.

[0029] Such marker members 7 are preferably provided at a height that allows them to be detected by the obstacle detection sensors 16. In other words, the marker members 7 are preferably provided so as to extend higher than the obstacle detection sensors 16. This prevents the traveling carriage 2 from colliding with the marker members 7. Furthermore, the marker members 7 are preferably lower than the support base 15. This prevents the support base 15 from colliding with the marker members 7 even if the traveling carriage 2 deviates from the route. Furthermore, the marker members 7 preferably have a height of, for example, 5 cm or more to prevent workers walking on the floor surface F from tripping.

[0030] (Configuration of robot controller) The robot controller 10 is mounted on the work robot 1. The robot controller 10 controls the operation of each part of the work robot 1. In this embodiment, the robot controller 10 also drives the cart 2 to a designated position. The designated position may be, for example, a work position where the work robot 1 performs work, or a storage position for the work robot 1. The designated position is specified by the operator of the work robot 1 via the operation PC 3.

[0031] (Configuration of the Operating PC) The operating PC 3 is a computer operated by the operator of the work robot 1. The operating PC 3 communicates wirelessly with the work robot 1. The operating PC 3 accepts operations from the operator and instructs the work robot 1 on a specified location that will be the destination and a route to the specified location (passing positions, etc.).

[0032] (Functional Configuration of Robot Control Device) Fig. 4 is a block diagram showing the functional configuration of the robot control device and the travel control device according to embodiment 1. As shown in Fig. 4, the robot control device 10 includes a path acquisition unit 101, a sensor information acquisition unit 102, a detection unit 103, a travel instruction unit 104, and a manipulator control unit 105.

[0033] The route acquisition unit 101 acquires route information D1 from the operation PC 3, which indicates the route from the current position of the cart 2 to the designated position.

[0034] The sensor information acquisition unit 102 acquires the image D2 captured by the vision sensor 12. For example, in this embodiment, the sensor information acquisition unit 102 acquires the image D2 captured by the CCD camera 12A of the vision sensor 12 when the cart 2 is moving.

[0035] The detection unit 103 detects the amount of deviation in the running position and direction of travel (angle) of the trolley 2 relative to the specified route based on the guide line L1 and marker L2 (upper marker L2a, side marker L2b) contained in the image captured by the vision sensor 12 (CCD camera 12A).

[0036] The travel instruction unit 104 outputs travel instructions D4 to the bogie 2 (travel control device 20) to instruct the bogie 2 on the travel position, stopping, speed, etc. For example, the travel instruction unit 104 instructs the bogie 2 to control the travel direction (angle) of the bogie 2 based on the travel direction of the bogie 2 detected by the detection unit 103 based on the guide line L1. Furthermore, the travel instruction unit 104 instructs the bogie 2 to correct the travel position and travel direction (angle) of the bogie 2 based on the amount of deviation of the bogie 2 detected by the detection unit 103 based on the marker L2.

[0037] The manipulator control unit 105 controls the manipulator 11 so that the vision sensor 12 and the tool 13 are in any position and posture. While the carriage 2 is moving, the manipulator control unit 105 controls the manipulator 11 so that the vision sensor 12 is in a first posture facing downward as shown in FIG.

[0038] (Functional Configuration of Travel Control Device) As shown in Fig. 4, the travel control device 20 includes a motor control unit 201. The motor control unit 201 controls the drive unit 21 to move, stop, and change the speed of the carriage 2. When there is no travel instruction from the robot control device 10, the motor control unit 201 may control the drive unit 21 so that the carriage 2 travels independently to a specified position based on sensor values ​​(travel amount and traveling direction of the carriage 2) of a travel assistance sensor (not shown).

[0039] When the cart 2 is moved, there is a possibility that the running position and direction of the cart 2 may deviate from the specified path due to factors such as unevenness of the floor surface of a factory, slippage of the wheels 23 on the floor surface F, or an inability to read the guide lines L1. Therefore, in this embodiment, when the robot control device 10 of the work robot 1 photographs the marker L2 with the vision sensor 12, it detects the amount of deviation of the cart 2 from the path based on the photographed marker L2 and issues a driving instruction to the driving control device 20 of the cart 2 to correct the running position. The motor control unit 201 of the driving control device 20 controls the drive device 21 to adjust the running position of the cart 2 in accordance with the driving instruction from the robot control device 10.

[0040] As described above, the wheels 23 of the bogie 2 in this embodiment are Mecanum wheels. The motor control unit 201 may have a calculation unit 201A for calculating control command values ​​indicating whether or not the travel motor of each wheel 23 is rotating, the direction of rotation, the number of rotations, etc. When the coordinates of a destination are given, for example, the calculation unit 201A calculates control command values ​​for each travel motor for moving the bogie 2 toward the destination coordinates. The motor control unit 201 controls the travel motors based on the control command values ​​calculated by the calculation unit 201A.

[0041] (Carriage travel processing by robot) Fig. 5 is a flowchart showing an example of carriage travel processing by the robot according to the first embodiment. Fig. 6 is a diagram showing an example of route information according to the first embodiment. Fig. 7 is a diagram for explaining the robot travel processing according to the first embodiment. Here, the flow of the carriage 2 travel processing by the robot control device 10 of the work robot 1 will be explained with reference to Figs. 5 to 7.

[0042] The path acquisition unit 101 acquires path information D1 ( FIG. 4 ) from the operation PC 3, which indicates the path from the current position of the cart 2 to a designated position (step S101). The designated position is, for example, the work position of the work robot 1. The designated position and path are input by the operator via the operation PC 3. As shown in FIG. 6 , the path information D1 represents the coordinates (X, Y, Z) of the start position (current position), passing positions, and designated position (destination), as well as the orientation (R) of the cart 2 at each position.

[0043] Upon acquiring the path information D1, the robot controller 10 starts the carriage 2 traveling in accordance with the path information D1 (step S102). After the carriage 2 starts traveling, the robot controller 10 acquires an image D2 captured by the vision sensor 12 (step S103). As shown in Figures 1 and 7, in this embodiment, the working robot 1 first captures the image D2 in a position (first position) in which the vision sensor 12 faces vertically downward (toward the floor).

[0044] When the detection unit 103 detects the guide line L1 from the acquired image D2 (step S104; YES), the detection unit 103 detects the traveling direction of the dolly 2 and the amount of deviation of the dolly 2 in the Y direction based on the detection information D3 of the guide line L1 (step S105). The detection unit 103 detects the amount of deviation indicating how much the position of the dolly 2 is deviated in the Y direction, for example, based on the position of the guide line L1 in the image D2. Furthermore, the detection unit 103 detects the amount of deviation indicating how much the traveling direction of the dolly 2 is deviated, for example, based on the angle of the guide line L1 in the image D2.

[0045] Furthermore, when the detection unit 103 detects the upper marker L2a from the image D2 (step S104; YES), the detection unit 103 detects the coordinates (X, Y) and angle (angle R around the Z axis) of the detected position of the upper marker L2a in the image D2. Based on the coordinates and angle of the upper marker L2a, the detection unit 103 detects the amount of deviation that indicates how much the position and traveling direction of the cart 2 are deviated (step S105).

[0046] If the detection unit 103 cannot detect the upper marker L2a in the first posture (step S104; NO), the manipulator control unit 105 changes the position and posture of the manipulator 11 to assume a second posture in which the vision sensor 12 faces forward in the traveling direction. If the detection unit 103 subsequently detects a side marker L2b from the image D2 captured in the second posture (step S104; YES), the detection unit 103 detects the coordinates (X, Y) and angle (angle R around the Z axis) of the detected position of the side marker L2b in the image D2. Based on the coordinates and angle of the side marker L2b, the detection unit 103 detects the amount of deviation indicating the degree of deviation in the position and traveling direction of the carriage 2 (step S105).

[0047] Next, the travel instruction unit 104 outputs a travel instruction D4 to the carriage 2 based on the detected amount of deviation and the travel position so as to reduce the amount of deviation of the carriage 2 (step S106).

[0048] For example, as shown in (7) of FIG. 5 , when a deviation in the Y direction from the guide line L1 is detected, the travel instruction unit 104 outputs a travel instruction D4 to correct the position of the bogie 2 in the Y direction. This travel instruction is expressed, for example, as the relative coordinates (X, Y) of the corrected position with respect to the current position of the bogie 2. If the bogie 2 is capable of changing its traveling direction using a steering mechanism, the travel instruction D4 may include the relative angle (R) of the corrected traveling direction with respect to the current traveling direction. Note that the travel instruction unit 104 may be configured to output a travel instruction D4 to correct the traveling position of the bogie 2 when the deviation amount is equal to or greater than a preset tolerance. In other words, if the deviation amount is less than the tolerance, it is not necessary to correct the position of the bogie 2.

[0049] 5B, when the travel position of the carriage 2 is detected from the marker L2, the travel instruction unit 104 outputs a travel instruction D4, such as coordinates indicating the next destination of the carriage 2, stopping, or changing the speed, based on the travel position of the carriage 2 and the route information D1. For example, assume that the route information D1 includes a route in which the carriage 2 moves in the X direction and then moves in the Y direction upon reaching a certain work area (area 3). In this case, when the travel instruction unit 104 detects from the reading result of the marker L2 that the carriage 2 has reached this work area (area 3), it outputs a travel instruction D4 specifying the coordinates of the next destination to the carriage 2. Note that when the reading result of the marker L2 includes information indicating "stop," "90-degree turn," or "traveling speed," the travel instruction unit 104 may include an instruction to stop, make a 90-degree turn, change the travel speed (accelerate or decelerate), or the like in the travel instruction D4 according to the reading result. In addition, when stopping the trolley 2, the driving instruction unit 104 may detect the amount of deviation in the detected position of the marker L2 and output a driving instruction D4 to adjust the position and attitude of the trolley 2, and after adjusting the position and attitude of the trolley 2, output a driving instruction D4 indicating stopping.

[0050] Thereafter, the robot controller 10 determines whether the carriage 2 has stopped at the designated position (step S107). For example, if the robot controller 10 has instructed the carriage 2 to stop at the designated position (within the work area that is the destination) in step S105 (step S107; YES), the robot controller 10 stops the carriage 2. On the other hand, if the robot controller 10 has not instructed the carriage 2 to stop at the designated position in step S105 (step S107; NO), the robot controller 10 returns to step S102 and continues the travel process of the carriage 2 (steps S102 to S107).

[0051] If the cart 2 is stopped at the specified position in step S107 (step S107; YES), the work robot 1 reads the marker L2 (upper marker L2a) with the vision sensor 12 (step S108). Based on the information contained in the read marker L2 (QR code), the work robot 1 performs predetermined processing, such as determining its own position or performing an interlock before the next operation.

[0052] (Actions and Effects) As described above, the work robot system 100 according to this embodiment comprises a work robot 1 including a cart 2 capable of traveling on a floor surface F, a manipulator 11 mounted on the cart 2 and capable of arbitrarily changing the position and posture of the tip thereof, and a vision sensor 12 attached to the tip 11a of the manipulator 11; and a marker member 7 provided at a predetermined position on the floor surface F, the marker member 7 comprising a post 71 rising upward from the floor surface F and a marker L2 provided at the upper end of the post 71 and containing information about its position on the floor surface F, and the work robot 1 comprises a robot control device 10 which controls the traveling of the cart 2 based on the marker L2 contained in an image captured by the vision sensor 12.

[0053] This working robot system 100 uses a vision sensor 12 attached to the manipulator 11 to guide the cart 2, eliminating the need for a separate mechanism for guiding the cart 2. This allows the cart 2 to be constructed with minimal equipment and cost, while also allowing the cart 2 to move accurately along the path. Furthermore, the marker L2 is attached to the upper end of a post 71 that rises above the floor F. This makes the marker L2 less likely to become soiled or damaged than if it were attached to the floor F. Therefore, when photographing the marker L2 using the vision sensor 12 attached to the tip 11a of the manipulator 11 of the working robot 1, the vision sensor 12 can easily approach the marker L2. As a result, the marker L2 can be easily and clearly photographed, allowing for efficient travel control of the cart 2. The post 71 also functions as a protective member to prevent the cart 2 from colliding with nearby workers if it deviates from the path.

[0054] The post 71 has an upward surface 71t, and the marker L2 has an upper marker L2a provided on the upward surface 71t. As a result, by photographing with the vision sensor 12 facing downward while the carriage 2 is traveling, the upper marker L2a provided on the upward surface 71t of the post 71 can be photographed well.

[0055] Furthermore, by providing the side marker L2b on the side surface 71s of the post 71, it becomes possible for the vision sensor 12 to capture an image of the marker L2 (side marker L2b) even at a location distant from the post 71. This makes it easier to detect the marker L2 even if the cart 2 deviates from the route.

[0056] Furthermore, the manipulator 11 is provided on a support base 15 that protrudes outward in a plan view from the top plate 2t of the carriage 2. Therefore, compared to when the manipulator 11 is provided on the top plate 2t, the range that the tip 11a of the manipulator 11 can reach toward the side of the top plate 2t where the support base 15 is provided is wider. Therefore, even if the marker member 7 is away from the travel path of the carriage 2, the vision sensor 12 can easily detect the marker L2 of the marker member 7. As a result, the degree of freedom in the installation position of the marker member 7 is increased.

[0057] Furthermore, the height of the marker member 7 from the floor surface F is smaller than the height of the support base 15 from the floor surface F. This makes it possible to prevent the support base 15 from colliding with the marker member 7 even if the cart 2 deviates from the route.

[0058] Furthermore, since the marker member 7 is provided so as to be detectable by the obstacle detection sensor 16, it is possible to prevent the carriage 2 from colliding with the marker member 7.

[0059] Furthermore, the robot control device 10 detects the amount of deviation of the carriage 2 from the specified route based on the marker L2 included in the image captured by the vision sensor 12, and corrects the running position or running posture of the carriage 2 based on the amount of deviation. As a result, the carriage 2 can be moved along the route with high precision.

[0060] In the marker member 7 for the working robot system 100 described above, the marker L2 is attached to the upper end of a post 71 that rises above the floor F. This makes the marker L2 less likely to become soiled or damaged than if the marker L2 were attached to the floor F. Therefore, when photographing the marker L2 using the vision sensor 12 attached to the tip 11a of the manipulator 11 of the working robot 1, the vision sensor 12 can easily approach the marker L2. As a result, the marker L2 can be photographed easily and satisfactorily, allowing for efficient travel control of the cart 2. The post 71 also functions as a protective member to prevent the cart 2 from colliding with nearby workers if it deviates from its path.

[0061] According to the control method for working robot system 100 as described above, marker L2 can be photographed easily and satisfactorily, and travel control of cart 2 can be performed efficiently.

[0062] 8 is a diagram showing an example of the hardware configuration of the robot control device and the travel control device. A computer 900 includes a CPU 901, a main memory device 902, an auxiliary memory device 903, an input / output interface 904, and a communication interface 905.

[0063] The robot controller 10 and the travel controller 20 are each implemented in a computer 900. The above-described functions are stored in the auxiliary storage device 903 in the form of a program. The CPU 901 reads the program from the auxiliary storage device 903, loads it into the main storage device 902, and executes the above-described processing in accordance with the program. The CPU 901 also allocates a storage area in the main storage device 902 in accordance with the program. The CPU 901 also allocates a storage area in the auxiliary storage device 903 for storing data being processed in accordance with the program.

[0064] Alternatively, a program for implementing all or part of the functions of the robot controller 10 and the driving controller 20 may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed to perform processing by each functional unit. The term "computer system" as used herein includes hardware such as an OS and peripheral devices. Furthermore, if a WWW system is used, the term "computer system" also includes a website provision environment (or display environment). Furthermore, the term "computer-readable recording medium" refers to portable media such as CDs, DVDs, and USBs, as well as storage devices such as hard disks built into the computer system. Furthermore, if the program is distributed to the computer 900 via a communication line, the computer 900 may load the program into the main storage device 902 and execute the processing described above. Furthermore, the program may be for implementing part of the functions described above, or may be capable of implementing the functions described above in combination with a program already stored in the computer system.

[0065] Second Embodiment Next, a second embodiment will be described in detail with reference to Figures 9 to 12. Components common to the above-described embodiment will be assigned the same reference numerals, and detailed description thereof will be omitted.

[0066] (Functional Configuration of the Traveling Program Generation Device) FIG. 9 is a block diagram showing the functional configuration of a robot control device and a traveling program generation device according to the second embodiment. In this embodiment, an example will be described in which the operation PC 3 functions as the traveling program generation device 30. In other embodiments, the traveling program generation device 30 may be hardware different from the operation PC 3. As shown in FIG. 9, the traveling program generation device 30 includes a route generation unit 301, a traveling program generation unit 302, and a transmission processing unit 303.

[0067] The path generation unit 301 generates path information D5 including the coordinates of the designated position and passing positions for the work robot 1, and the target orientation of the work robot 1 at the designated position and passing positions. The designated position is the destination of the work robot 1. The passing positions are waypoints that the work robot 1 passes through on its way from its current position to the designated position. The path generation unit 301 generates path information D5 by accepting input operations of the coordinates and orientation of each position from, for example, the operator of the work robot 1.

[0068] The driving program generation unit 302 calculates the amount of movement between each position and the turning positions where the work robot 1 changes its direction of travel based on the route information D5, and generates a driving program D6 that sequentially combines actions including the action of the work robot 1 moving between each position, the action of turning at the turning positions, and the action of correcting the position and posture of the work robot 1 based on the marker L2 included in the image D2 captured by the vision sensor 12 of the work robot 1 at the turning positions.

[0069] The transmission processing unit 303 transmits the driving program D6 generated by the driving program generation unit 302 to the working robot 1.

[0070] (Functional Configuration of Robot Controller) The robot controller 10 of this embodiment controls the operation of the working robot 1 in accordance with the driving program D6 generated by the driving program generator 30.

[0071] As shown in FIG. 9, the robot control device 10 according to this embodiment includes a driving program acquisition unit 106 instead of the path acquisition unit 101.

[0072] The driving program acquisition unit 106 acquires the driving program D6 from the driving program generation device 30.

[0073] The travel instruction unit 104 outputs a travel instruction D4 to the travel control device 20 in accordance with the travel program D6 acquired by the travel program acquisition unit 106. Furthermore, when the travel program D6 includes a position and attitude correction operation, the travel instruction unit 104 outputs a detection instruction D7 for the marker L2 to the manipulator control unit 105.

[0074] When a detection instruction D7 is input, the manipulator control unit 105 controls the posture of the manipulator 11 so that the vision sensor 12 can photograph the marker L2 (upper marker L2a or side marker L2b), and also controls the vision sensor 12 to perform the photograph.

[0075] In the first embodiment, the robot controller 10 constantly photographs the marker L using the vision sensor 12 and corrects the traveling position and traveling direction based on the image captured by the vision sensor 12. In contrast, in the second embodiment, the robot controller 10 photographs the marker L2 using the vision sensor 12 and corrects the position and orientation of the work robot 1 (cart 2) based on the image D2 captured by the vision sensor 12 only when a position and orientation correction operation is instructed in the traveling program D6.

[0076] (Traveling program generation process) Figure 10 is a flowchart showing an example of the processing of the traveling program generation device according to the second embodiment. Figure 11 is a diagram for explaining the processing of the traveling program generation device according to the second embodiment. Here, the flow of processing by the traveling program generation device 30 to generate the traveling program D6 for the work robot 1 (carriage 2) will be explained with reference to Figures 10 and 11 .

[0077] The route generator 301 generates route information D5 according to the information entered by the operator (step S201). As shown in Figure 11, route information D5 includes the coordinates (X, Y, Z) of the work robot 1's start position (current position), passing positions (waypoints), and designated position (destination), as well as the orientation (R) of the work robot 1 at each position. The coordinates of the start position, passing positions, and designated position are absolute coordinates within the work robot 1's travel area.

[0078] The operator inputs the coordinates (X, Y, Z) of pass positions and designated positions in the order in which the work robot 1 will move, as well as the target orientation (R) of the work robot 1 at the pass positions and designated positions. For example, the operator inputs the coordinates of pass positions P2 to P4 and designated position P5 in the order of movement. The path generation unit 301 then generates path information D5, which lists the coordinates of each position P1 to P5 from start position P1 to designated position P5 in the order of movement. The coordinates and orientation (R) of start position P1 may be obtained automatically from the current position and orientation of the work robot 1, or the operator may input them after checking the state of the work robot 1.

[0079] Furthermore, if the operator wishes to change the traveling direction of the work robot 1 at passing position P2, the operator inputs the traveling direction (target posture) of the work robot 1 at passing position P2. In response, the path generator 301 generates path information D5 that includes a step for changing the traveling direction (changing direction) of the work robot 1 at passing position P2 without changing the position (coordinates).

[0080] Furthermore, the operator may input an instruction for the work robot 1 to temporarily wait after changing its direction of travel at pass position P2. In this case, the path generation unit 301 generates path information D5 that includes a step indicating a state (waiting) in which the position (coordinates) and posture of the work robot 1 do not change at pass position P2.

[0081] Based on the route information D5 generated by the route generation unit 301, the driving program generation unit 302 calculates the amount of movement (relative movement) between each position of the work robot 1, turning positions where the work robot 1 changes its direction of travel, waiting positions, etc., and generates a driving sequence for the work robot 1 (step S202).

[0082] In the example of FIG. 11, the driving program generator 302 generates a driving sequence consisting of the following operations (1) to (6) based on the route information D5.

[0083] (1) The driving program generator 302 generates a motion (1) for the work robot 1 to move 1,950 mm straight (forward) and 40 mm laterally to the right, based on the amount of movement calculated from the coordinates of the start position P1 and the passing position P2 in the path information D5. The wheels 23 on the cart 2 of the work robot 1 are Mecanum wheels, allowing movement in all directions. Therefore, the driving program generator 302 may generate motions for the work robot 1 to move in all directions, including left and right and diagonally, rather than limiting movement to the forward and backward directions.

[0084] (2) Because the posture (R) at pass position P2 in the path information D5 has changed from the previous step, pass position P2 is calculated as the direction change position. In this embodiment, the traveling program generator 302 automatically adds to the traveling sequence an operation to correct the position and posture of the work robot 1 at the direction change position. Therefore, in the example of FIG. 11 , the traveling program generator 302 generates operation (2) in which the work robot 1 moves to pass position P2 by operation (1), corrects its position and posture based on image D2 capturing a marker L2 located near pass position P2, and then turns 90 degrees to the left. Note that operation (2) may also be an operation in which the work robot 1 turns 90 degrees to the left and then corrects its position and posture based on marker L2.

[0085] (3) Because neither the position (coordinates) nor the orientation of pass position P2 in path information D5 has changed since the previous step, pass position P2 is calculated as the standby position. Therefore, the traveling program generator 302 generates an operation (3) in which the work robot 1 waits (stops) at pass position P2 for a predetermined standby time. The standby time may be determined in advance, or the standby time input by the operator in step S201 may be used.

[0086] (4) The driving program generation unit 302 generates an operation (4) for the work robot 1 to move straight (backward) 700 mm based on the amount of movement calculated from the coordinates of the passing position P2 and the next passing position P3 in the route information D5.

[0087] (5) The driving program generator 302 generates a motion (5) for the work robot 1 to move laterally 400 mm to the right based on the amount of movement calculated from the coordinates of the passing position P3 and the next passing position P4 in the route information D5.

[0088] (6) Based on the movement amount calculated from the coordinates of the passing position P4 and the next specified position P5, the driving program generation unit 302 generates an operation (6) to move the work robot 1 forward by 10 mm and laterally by 10 mm to the left.

[0089] Furthermore, the driving program generator 302 may add an operation in which the work robot 1 corrects its position and posture based on an image of a marker L2 located near the designated position P5 after the work robot 1 reaches the designated position P5 (after performing operation (6)). This allows the positional relationship between the work robot 1 and the work object to be appropriately corrected when the work robot 1 reaches the designated position P5.

[0090] When the generation of the driving sequence is completed, the driving program generation unit 302 converts the driving sequence into program code for the robot control device 10 to generate a driving program D6 (step S203).

[0091] The transmission processing unit 303 transmits the driving program D6 generated by the driving program generation unit 302 to the robot control device 10 (step S204). The transmission processing unit 303 transmits the driving program D6 to the robot control device 10 via, for example, an FTP server. In another embodiment, the transmission processing unit 303 may transmit the driving program D6 to a portable recording medium (not shown), and the robot control device 10 may read the driving program D6 from the recording medium.

[0092] (Carriage Travel Processing by Robot) Fig. 12 is a flowchart showing an example of carriage travel processing by the robot system according to Embodiment 2. The flow of carriage travel processing by the robot control device 10 of the work robot 1 will be described with reference to Fig. 12 .

[0093] The driving program acquisition unit 106 acquires the driving program D6 from the driving program generation device 30 (or from a recording medium) (step S301).

[0094] The travel instruction unit 104 repeats steps S302 to S308 to sequentially execute the instructions contained in the acquired travel program D6, and controls the travel control device 20, manipulator 11, and vision sensor 12 of the carriage 2.

[0095] For example, if the control commanded by the traveling program D6 is position and attitude correction (step S302; YES), the traveling instruction unit 104 outputs a detection command D7 to the manipulator control unit 105 (step S303). In response, the manipulator control unit 105 outputs a control command to the manipulator 11 to take an attitude (e.g., the first attitude) in which the marker L2 can be read, and outputs a control command to the vision sensor 12 to photograph the marker L2.

[0096] The detection unit 103 acquires the image D2 captured by the vision sensor 12 (step S304). If the detection unit 103 cannot detect the marker L2 from the image D2 captured in the current posture (step S305; NO), the manipulator control unit 105 changes the posture of the manipulator 11. For example, the manipulator control unit 105 outputs a control command to the manipulator 11 to change the current posture to another posture (e.g., from the first posture to the second posture), or to shift the position and orientation (angle) of the vision sensor 12 by a predetermined amount from the current posture (the first posture or the second posture). Then, the detection unit 103 acquires the image D2 captured in the new posture (step S304).

[0097] If the detection unit 103 detects the marker L2 in the image D2 (step S305; YES), it detects the amount of deviation in the position and attitude (travel direction) of the carriage 2 based on the coordinates and angle of the detected position of the marker L2 in the image D2 (step S306) and outputs detection information D3 including this deviation to the driving instruction unit 104. The driving instruction unit 104 outputs driving instructions D4 to reduce the deviation of the carriage 2 based on the deviation amount and traveling position included in the detection information D3 (step S307). The wheels 23 of the carriage 2 are Mecanum wheels, allowing movement in all directions. Therefore, the driving instruction unit 104 moves the carriage 2 in any direction, including forward / backward, left / right, and diagonally, to correct the position and attitude of the carriage 2. Note that steps S304 to S307 are the same as steps S103 to S106 in the first embodiment ( FIG. 5 ).

[0098] Furthermore, if the control commanded by the driving program D6 is other than the correction of position and attitude (step S302; NO), the driving instruction unit 104 outputs driving instructions D4 (instructions for going straight, moving sideways, turning, waiting, etc.) to the bogie 2 (driving control device 20) in accordance with the control commanded by the driving program D6 (step S310).

[0099] Thereafter, the traveling instruction unit 104 determines whether the traveling program D6 has been executed in its entirety (step S308). If the traveling instruction unit 104 has not executed the traveling program D6 to the end (step S308; NO), the traveling instruction unit 104 returns to step S302 and continues the traveling process of the carriage 2 (steps S302 to S307, S310).

[0100] If the driving program D6 has been executed to the end (step S308; YES), the work robot 1 reads the marker L2 with the vision sensor 12 (step S309). Based on the information contained in the read marker L2, the work robot 1 performs predetermined processing, such as self-positioning and interlocking before the next operation. This processing is the same as the processing in step S108 in the first embodiment (FIG. 5).

[0101] (Actions and Effects) As described above, the driving program generation device 30 according to this embodiment comprises a path generation unit 301 that receives input operations from an operator and generates path information D5 including the coordinates of a specified position that is the destination of the work robot 1 and each of the pass positions that the work robot 1 will pass through on the way to the specified position, and a target attitude that indicates the direction of travel of the work robot 1 at each of the specified position and the pass positions; and a driving program generation unit 302 that calculates the amount of movement between each position and the direction change positions at which the work robot 1 will change its direction of travel based on the path information D5, and generates a driving program D6 that sequentially combines actions including an action of the work robot 1 moving between each position, an action of turning at the direction change positions, and an action of correcting the position and attitude of the work robot 1 based on markers L2 included in images D2 captured by the vision sensor 12 of the work robot 1 at the direction change positions.

[0102] In this way, by generating a driving program D6 that includes corrections to the position and orientation at turning positions, the driving program generator 30 can automatically correct the position and orientation of the work robot 1 each time it reaches a turning position. This allows the driving program generator 30 to improve the reliability of the work robot 1's autonomous movement to the specified position (destination), thereby reducing the operator's work of monitoring and operating the moving work robot 1. Furthermore, in preparation for the work robot 1's movement, the operator only needs to specify the coordinates of the specified position and passing positions, as well as the orientation of the work robot 1 at each position. This eliminates the need for the operator to perform the tedious work of calculating the amount of movement between positions from the work robot's path and creating a driving program. This reduces the operator's workload and the amount of time required to generate a driving program.

[0103] Third Embodiment Next, a third embodiment will be described in detail with reference to Fig. 13. Components common to the above-described embodiments are denoted by the same reference numerals, and detailed description thereof will be omitted.

[0104] Figure 13 is a diagram for explaining the processing of the driving program generator according to the third embodiment. In this embodiment, in step S201 of Figure 10, the path generator 301 of the driving program generator 30 presents the driving area screen shown in Figure 13 to the operator, and generates and acquires path information D5 based on the position and orientation of the work robot 1 set by the operator on the driving area screen. The driving area screen includes map information of the driving area, including the location of the work area where the work robot 1 will work and the installation locations of markers L2, as well as start position information indicating the current position and orientation of the work robot 1. The driving area screen may also include path information indicating paths along which the work robot 1 can travel.

[0105] The operator sets the designated position and pass positions for the work robot 1 by selecting any position on the travel area screen (by tapping, clicking, etc.). The path generation unit 301 displays an icon for the work robot 1 at the position selected by the operator. The operator also operates the icon to change the designated position and pass positions, and to change the attitude (direction of travel) of the work robot 1 at the designated position and pass positions. When the operator performs an operation to complete the settings, the path generation unit 301 generates and acquires path information D5 based on the position and attitude of each icon on the travel area screen, which includes the coordinates of the start position, designated position, and pass positions, and the attitude of the work robot 1 at each position.

[0106] In this way, the driving program generator 30 can automatically generate route information D5 based on the position set by the operator on the driving area screen and the attitude (icon orientation) of the work robot 1. This eliminates the need for the operator to manually input the coordinates of the specified position and passing positions or the numerical values ​​indicating the attitude of the work robot 1, allowing the operator to easily specify the movement route of the work robot 1.

[0107] The path generating unit 301 may also display a travel area screen including path information indicating paths along which the work robot 1 can travel. In this case, if the operator selects a position other than a path along which the work robot 1 can travel, the path generating unit 301 displays a warning message on the travel area screen indicating that "movement to the selected position is not possible." Alternatively, the path generating unit 301 may restrict the selection of positions on the travel area screen other than the path along which the work robot 1 can travel.

[0108] In this way, the driving program generator 30 enables even an inexperienced operator who is not familiar with the driving area to easily create a proposed route for the work robot 1. This reduces the possibility that the work robot 1 will travel along an inappropriate route, such as a route that approaches an object in the surrounding environment.

[0109] The path generating unit 301 may also display a travel area screen showing the installation position of marker L2. In this case, if the operator specifies a position a certain distance away from the installation of marker L2 as a direction change position for the work robot 1, the path generating unit 301 displays a warning on the travel area screen indicating that "direction change is not possible at the selected position." Alternatively, the path generating unit 301 may restrict the orientation of the work robot 1 so that it cannot be changed at a position a certain distance away from the installation position of marker L2 on the travel area screen.

[0110] In this way, the driving program generator 30 can generate path information D5 and a driving program D6 that can more reliably correct the position and posture of the marker L2 when the work robot 1 changes direction. This prevents the work robot 1 from significantly deviating from its travel path after changing direction due to accumulated position and posture errors. This further improves the reliability of autonomous movement to a specified position (destination).

[0111] Fourth Embodiment Next, a fourth embodiment will be described in detail with reference to Fig. 14. Components common to the above-described embodiments will be denoted by the same reference numerals, and detailed description thereof will be omitted.

[0112] 14 and 15 are diagrams illustrating the processing of a driving program generator according to the fourth embodiment. In this embodiment, in step S202 of FIG. 10 , if the amount of movement of the linear path along which the work robot 1 moves in one direction between the passing position set by the operator and another position is equal to or exceeds a threshold, or if a marker L2 is provided on the linear path, the driving program generator 302 of the driving program generator 30 generates a driving program D6 that includes an operation to correct the position and orientation of the work robot 1 at the location of the marker L2 on the linear path.

[0113] 14 and 15 , assume that the path generation unit 301 generates path information D5 in response to an input operation by the operator, in which the work robot 1 moves straight from start position P21 to pass position P22, and then moves straight from pass position P22 to pass position P23. Here, if the amount of movement along path 1 moving straight from start position P21 to pass position P22 is equal to or less than a threshold, or if marker L2 is not installed on path 1, the traveling program generation unit 302 does not add a position and orientation correction operation along path 1.

[0114] Also, for example, as shown in FIG. 14 , assume that markers L2 (L2-1, L2-2, L3, ...) are placed at equal intervals. Here, if the movement amount of path 2 going straight from pass position P22 to pass position P23 is equal to or greater than a threshold, the traveling program generation unit 302 sets intermediate pass positions on path 2 for each unit distance. The unit distance is the interval between the placement of markers L2. Therefore, the intermediate pass positions are set to the placement positions of markers L2. Then, the traveling program generation unit 302 generates a traveling sequence that corrects the position and posture based on marker L2 for each intermediate pass position. In the example of FIG. 14 , path 2 is divided into a divided path 2A from pass position P22 to intermediate pass position P22A and a divided path 2B from intermediate pass position P22A to pass position P23. Then, the driving program generation unit 302 generates a driving sequence that includes an operation of moving from the passing position P22 to the intermediate passing position P22A, an operation of correcting the position and posture at the intermediate passing position P22A based on the marker L2-2, and an operation of moving from the intermediate passing position P22A to the passing position P23 after the correction is completed.

[0115] 15 , multiple markers L2 (L2-1, L2-3, L2-4, L3) are set at irregular intervals between pass position P22 and pass position P23. Here, when the movement amount of path 2 going straight from pass position P22 to pass position P23 is equal to or greater than a threshold, the travel program generation unit 302 sets intermediate pass positions on path 2 corresponding to the positions of markers L2. Then, the travel program generation unit 302 generates a travel sequence that corrects the position and posture based on marker L2 for each intermediate pass position. In the example of FIG. 15 , path 2 is divided into a divided path 2C from pass position P22 to intermediate pass position P22B, a divided path 2D from intermediate pass position P22B to intermediate pass position P22C, and a divided path 2E from intermediate pass position P22C to pass position P23. Then, the driving program generation unit 302 generates a driving sequence including an operation of moving from the passing position P22 to the intermediate passing position P22B, an operation of correcting the position and posture at the intermediate passing position P22B based on the marker L2-3, an operation of moving from the intermediate passing position P22B to the intermediate passing position P22C after the correction is completed, an operation of correcting the position and posture at the intermediate passing position P22C based on the marker L2-4, and an operation of moving from the intermediate passing position P22C to the passing position P23 after the correction is completed.

[0116] In the example of Figure 15, the driving program generation unit 302 may generate a driving sequence that corrects the position and posture at each of the intermediate passing positions P22B and P22C, regardless of whether the movement amount of path 2 is greater than or equal to a threshold value.

[0117] In step S203 of FIG. 10, the driving program generator 302 generates a driving program D6 based on the driving sequence obtained by dividing the route as described above.

[0118] In this way, the driving program generator 30 can automatically generate a driving program that adds an operation to correct the position and posture of the work robot 1 at the installation position of the marker L2, for example, when the linear travel distance between passing positions set by the operator is long. This reduces the risk of the work robot 1 losing its own position due to accumulated errors while traveling long distances, or the risk of deviating from the expected route and coming into contact with objects in the surrounding environment.

[0119] Other Embodiments Although the embodiments have been described in detail above with reference to the drawings, the specific configuration is not limited to the above, and various design changes are possible. That is, in other embodiments, the order of the above-described processes may be changed as appropriate. Furthermore, some processes may be executed in parallel.

[0120] <Additional Notes> The working robot system 100 and the control method for the working robot system 100 described in the embodiment can be understood, for example, as follows.

[0121] (1) A working robot system 100 according to a first aspect comprises a working robot 1 including a cart 2 capable of traveling on a floor surface F, a manipulator 11 mounted on the cart 2 and capable of arbitrarily changing the position and posture of the tip 11a, and a vision sensor 12 attached to the tip 11a of the manipulator 11; and a marker member 7 provided at a predetermined position on the floor surface F, the marker member 7 comprising a post 71 rising upward from the floor surface F and a marker L2 provided at the upper end of the post 71 and containing information about its position on the floor surface F, and the working robot 1 comprises a control device 10 that controls the traveling of the cart 2 based on the marker L2 contained in an image captured by the vision sensor 12.

[0122] This working robot system 100 uses a vision sensor 12 attached to the manipulator 11 to guide the cart 2, eliminating the need for a separate mechanism for guiding the cart 2. This allows the cart 2 to be constructed with minimal equipment and cost, while also enabling the cart 2 to move accurately along the path. Furthermore, the marker L2 is attached to the upper end of a post 71 that rises above the floor F. This makes the marker L2 less likely to become soiled or damaged than if the marker L2 were attached to the floor F. Therefore, when photographing the marker L2 using the vision sensor 12 attached to the tip 11a of the manipulator 11 of the working robot 1, the vision sensor 12 can easily approach the marker L2. As a result, the marker L2 can be easily and clearly photographed, allowing for efficient travel control of the cart 2. The post 71 also functions as a protective member to prevent the cart 2 from colliding with nearby workers if it deviates from the path.

[0123] (2) The work robot system 100 according to the second aspect is the work robot system 100 of (1), in which the post 71 has an upward surface 71t facing upward, and the marker L2 has an upper marker L2a provided on the upward surface 71t.

[0124] As a result, by pointing the vision sensor 12 downward to take an image while the carriage 2 is traveling, the upper marker L2a provided on the upward surface 71t of the post 71 can be easily photographed.

[0125] (3) The work robot system 100 according to the third aspect is the work robot system 100 according to (1) or (2), in which the post 71 has a side surface 71s facing to the side, and the marker L2 has a side marker L2b provided on the side surface 71s.

[0126] By providing the side marker L2b on the side surface 71s of the post 71, the vision sensor 12 can capture an image of the marker L2 (side marker L2b) even at a location away from the post 71. This makes it easier to detect the marker L2 even if the cart 2 deviates from the route.

[0127] (4) A work robot system 100 according to a fourth aspect is any one of the work robot systems 100 of (1) to (3), in which the work robot 1 further includes a support base 15 that protrudes outward in a plan view from the top plate 2t of the cart 2, and the manipulator 11 is provided on the support base 15.

[0128] As a result, the manipulator 11 is provided on a support base 15 that is provided so as to protrude outward in a plan view of the top plate 2t of the cart 2. Therefore, compared to when the manipulator 11 is provided on the top plate 2t, the range that the tip 11a of the manipulator 11 can reach toward the side of the top plate 2t where the support base 15 is provided is wider. Therefore, even if the marker member 7 is away from the travel path of the cart 2, the vision sensor 12 can easily detect the marker L2 of the marker member 7. As a result, the degree of freedom in the installation position of the marker member 7 is increased.

[0129] (5) The fifth aspect of the working robot system 100 is the working robot system 100 of (4), in which the height of the marker member 7 from the floor surface F is smaller than the height of the support base 15 from the floor surface F.

[0130] This prevents the support base 15 from colliding with the marker member 7 even if the trolley 2 deviates from the route.

[0131] (6) A sixth aspect of the work robot system 100 is any one of the work robot systems 100 of (1) to (5), in which the work robot 1 further includes an obstacle detection sensor 16 that detects obstacles around the cart 2, and the marker member 7 is arranged so as to be detectable by the obstacle detection sensor 16.

[0132] As a result, the marker member 7 is arranged so as to be detectable by the obstacle detection sensor 16, and therefore, the carriage 2 can be prevented from colliding with the marker member 7.

[0133] (7) A work robot system 100 according to a seventh aspect is any one of the work robot systems 100 of (1) to (6), in which the control device 10 includes a detection unit 103 that detects the amount of deviation of the carriage 2 from a specified route based on a marker L2 included in an image captured by the vision sensor 12, and a travel instruction unit 104 that instructs the carriage 2 to correct the traveling position or traveling posture of the carriage 2 based on the amount of deviation.

[0134] This allows the amount of deviation of the trolley 2 from the specified route to be detected based on the marker L2 contained in the image captured by the vision sensor 12, and the running position or running posture of the trolley 2 to be corrected based on the amount of deviation, thereby allowing the trolley 2 to move accurately along the route.

[0135] (8) The marker member 7 for a work robot system 100 relating to the eighth aspect is a marker member 7 used in a work robot system 100 comprising a work robot 1 including a cart 2 capable of running on a floor surface F, a manipulator 11 mounted on the cart 2 and capable of arbitrarily changing the position and posture of the tip thereof, and a vision sensor 12 attached to the tip 11a of the manipulator 11, and comprising: a post 71 provided at a predetermined position on the floor surface F and rising upward from the floor surface F; and a marker L2 provided at the upper end of the post 71 and containing information relating to its position on the floor surface F.

[0136] In the marker member 7 for this working robot system 100, the marker L2 is mounted on the upper end of a post 71 that rises from the floor F. This makes the marker L2 less likely to become soiled or damaged than if the marker L2 were mounted on the floor F. Therefore, when photographing the marker L2 using the vision sensor 12 attached to the tip 11a of the manipulator 11 of the working robot 1, the vision sensor 12 can easily approach the marker L2. As a result, the marker L2 can be photographed easily and satisfactorily, allowing for efficient travel control of the cart 2. The post 71 also functions as a protective member to prevent the cart 2 from colliding with nearby workers if it deviates from its path.

[0137] (9) A control method for a work robot system 100 according to a ninth aspect is a control method for a work robot system 100 of any one of (1) to (7), and includes step S101 of causing the cart 2 to travel along a specified route, step S102 of photographing the marker L2 with the vision sensor 12, and step S106 of controlling the travel of the cart 2 based on the marker L2 included in the image photographed by the vision sensor 12.

[0138] (10) A driving program generation device 30 according to the tenth aspect includes a path generation unit 301 that receives input operations from an operator and generates path information D5 including the coordinates of a specified position that is the destination of the work robot 1 and each of the pass positions that the work robot 1 will pass through on the way to the specified position, and a target attitude that indicates the direction of travel of the work robot 1 at each of the specified position and the pass positions; and a driving program generation unit 302 that calculates the amount of movement between each position and the turning positions at which the work robot 1 changes its direction of travel based on the path information D5, and generates a driving program D6 that sequentially combines actions including the movement of the work robot 1 between each position, the movement of turning at the turning positions, and the action of correcting the position and attitude of the work robot 1 based on markers L2 included in images D2 captured by the vision sensor 12 of the work robot 1 at the turning positions.

[0139] In this way, by generating a driving program D6 that includes corrections to the position and orientation at turning positions, the driving program generator 30 can automatically correct the position and orientation of the work robot 1 each time it reaches a turning position. This allows the driving program generator 30 to improve the reliability of the work robot 1's autonomous movement to the specified position (destination), thereby reducing the operator's work of monitoring and operating the moving work robot 1. Furthermore, in preparation for the work robot 1's movement, the operator only needs to specify the coordinates of the specified position and passing positions, as well as the orientation of the work robot 1 at each position. This eliminates the need for the operator to perform the tedious work of calculating the amount of movement between positions from the work robot's path and creating a driving program. This reduces the operator's workload and the amount of time required to generate a driving program.

[0140] (11) The driving program generation device 30 according to an eleventh aspect is the driving program generation device 30 of (10), in which the path generation unit 301 displays a driving area screen including map information of the driving area of ​​the work robot 1 and start position information indicating the current position and posture of the work robot 1 within the driving area, and generates path information D5 including the coordinates of each of the passing positions and designated positions of the work robot 1 and the target postures at each of the passing positions and designated positions based on the position and posture of the work robot 1 set by the operator on the driving area screen.

[0141] In this way, the driving program generator 30 can automatically generate route information D5 based on the position set by the operator on the driving area screen and the posture of the work robot 1. This eliminates the need for the operator to manually input the coordinates of the specified position and passing positions or the numerical values ​​indicating the posture of the work robot 1, allowing the operator to easily specify the movement route of the work robot 1.

[0142] (12) A driving program generation device 30 according to a twelfth aspect is the driving program generation device 30 of (11), wherein the driving area screen further includes path information indicating paths along which the work robot 1 can travel within the driving area.

[0143] In this way, the driving program generator 30 enables even an inexperienced operator who is not familiar with the driving area to easily create a proposed route for the work robot 1. This reduces the possibility that the work robot 1 will travel along an inappropriate route, such as a route that approaches an object in the surrounding environment.

[0144] (13) A driving program creation device 30 according to a thirteenth aspect is the driving program creation device 30 of (11), in which the driving area screen further includes information indicating the installation position of the marker L2 in the driving area.

[0145] In this way, the driving program generator 30 can generate path information D5 and a driving program D6 that can more reliably correct the position and posture of the marker L2 when the work robot 1 changes direction. This prevents the work robot 1 from significantly deviating from its travel path after changing direction due to accumulated position and posture errors. This further improves the reliability of autonomous movement to a specified position (destination).

[0146] (14) A driving program generation device 30 according to a fourteenth aspect is any one of the driving program generation devices 30 of (10) to (13), in which the driving program generation unit 302 generates a driving program D6 that, when the amount of movement of a straight-line path that moves the work robot 1 in one direction between a passing position and another position is equal to or greater than a threshold, sets an intermediate passing position at the installation position of the marker L2 on the straight-line path, and adds an operation to correct the position and posture of the work robot 1 at the intermediate passing position.

[0147] In this way, the driving program generator 30 can automatically generate a driving program that adds an operation to correct the position and posture of the work robot 1 at the installation position of the marker L2, for example, when the linear travel distance between passing positions set by the operator is long. This reduces the risk of the work robot 1 losing its own position due to accumulated errors while traveling long distances, or the risk of deviating from the expected route and coming into contact with objects in the surrounding environment.

[0148] (15) The driving program generation device 30 according to the fifteenth aspect is any one of the driving program generation devices 30 of (10) to (13), in which the driving program generation unit 302 generates a driving program D6 that, when a marker L2 is installed on a straight path that moves the work robot 1 in one direction between a passing position and another position, sets an intermediate passing position at the installation position of the marker L2 on the straight path and adds an operation to correct the position and posture of the work robot 1 at the intermediate passing position.

[0149] In this way, the driving program generator 30 can automatically generate a driving program that adds operations to correct the position and posture of the work robot 1 at the installation position of the marker L2. This reduces the risk of the work robot 1 losing its own position due to errors accumulating while moving, or the risk of deviating from the expected path and coming into contact with objects in the surrounding environment.

[0150] (16) A driving program generation method according to a sixteenth aspect includes the steps of: receiving input operations from an operator, and generating route information D5 including the coordinates of a designated position that is the destination of the work robot 1, and each of the pass positions that the work robot 1 will pass through on the way to the designated position, and a target attitude that indicates the direction of travel of the work robot 1 at each of the designated position and the pass positions; calculating the amount of movement between each position and the turning positions at which the work robot 1 changes its direction of travel based on the route information D5, and generating a driving program D6 that sequentially combines actions including the movement of the work robot 1 between each position, the movement of turning at the turning positions, and the action of correcting the position and attitude of the work robot 1 based on markers L2 included in images D2 captured by the vision sensor 12 of the work robot 1 at the turning positions.

[0151] (17) The program according to the seventeenth aspect causes the driving program generation device 30 to execute the following steps: receive input operations from an operator, and generate route information D5 including the coordinates of a designated position that is the destination of the work robot 1, and each of the pass positions that the work robot 1 will pass through on the way to the designated position, and a target attitude that indicates the direction of travel of the work robot 1 at each of the designated position and the pass positions; calculate the amount of movement between each position and the turning positions at which the work robot 1 will change its direction of travel based on the route information D5, and generate a driving program D6 that sequentially combines actions including the movement of the work robot 1 between each position, the movement of turning at the turning positions, and the action of correcting the position and attitude of the work robot 1 based on markers L2 included in images D2 captured by the vision sensor 12 of the work robot 1 at the turning positions.

[0152] According to the working robot system, marker member for the working robot system, and control method for the working robot system disclosed herein, the working robot can be moved with a simple and low-cost configuration.

[0153] DESCRIPTION OF SYMBOLS 1...Working robot 2...Cart 2s...Side surface 2t...Top plate 7...Marker member 10...Robot control device (control device) 11...Manipulator 11a...Tip 12...Vision sensor 15...Support base 16...Obstacle detection sensor 26...Obstacle detection sensor 71...Post 71s...Side surface 71t...Upward surface L2...Marker L2a...Upper marker L2b...Side marker 100...Working robot system 103...Detection unit 104...Travel instruction unit 30 Travel program generation device 301 Path generation unit 302 Travel program generation unit 303 Transmission processing unit F...Floor surface

Claims

1. A work robot system comprising: a work robot including a cart capable of running on a floor surface, a manipulator mounted on the cart and capable of arbitrarily changing the position and attitude of the tip thereof, and a vision sensor attached to the tip of the manipulator; and a marker member provided at a predetermined position on the floor surface, wherein the marker member comprises: a post rising from the floor surface; and a marker provided at the upper end of the post and containing information about its position on the floor surface; and the work robot comprising: a control device which controls the running of the cart based on the marker contained in an image captured by the vision sensor.

2. A work robot system according to claim 1, wherein the post has an upwardly facing surface, and the marker has an upper marker provided on the upwardly facing surface.

3. A working robot system according to claim 1 or 2, wherein the post has a side surface facing to the side, and the marker has a side marker provided on the side surface.

4. A work robot system as described in claim 1 or 2, wherein the work robot further comprises a support base that protrudes outward in a plan view from the top plate of the cart, and the manipulator is mounted on the support base.

5. A working robot system according to claim 4, wherein the height of said marker member from the floor surface is smaller than the height of said support base from the floor surface.

6. A work robot system as described in claim 1 or 2, wherein the work robot further comprises an obstacle detection sensor that detects obstacles around the cart, and the marker member is arranged so as to be detectable by the obstacle detection sensor.

7. A work robot system as described in claim 1 or 2, wherein the control device comprises: a detection unit that detects the amount of deviation of the cart from a specified route based on markers included in images captured by the vision sensor; and a driving instruction unit that instructs the cart to correct the driving position or driving posture of the cart based on the amount of deviation.

8. A marker component for a work robot system comprising a work robot including a cart capable of running on a floor surface, a manipulator mounted on the cart and capable of arbitrarily changing the position and orientation of the tip, and a vision sensor attached to the tip of the manipulator, the marker component comprising: a post provided at a predetermined position on the floor surface and rising upward from the floor surface; and a marker provided at the upper end of the post and containing information regarding its position on the floor surface.

9. A control method for a work robot system according to claim 1 or 2, comprising the steps of: causing the cart to travel along a specified route; photographing the marker with the vision sensor; and controlling the travel of the cart based on the marker included in the image photographed by the vision sensor.

10. A driving program generation device comprising: a path generation unit that receives input operations from an operator and generates path information including the coordinates of a specified position that is the destination of the work robot and each of the pass positions that the work robot will pass through on the way to the specified position, and a target attitude that indicates the direction of travel of the work robot at each of the specified position and each of the pass positions; and a driving program generation unit that calculates the amount of movement between each position and the direction change positions at which the work robot changes its direction of travel based on the path information, and generates a driving program that sequentially combines actions including movements of the work robot between each position, movements of the work robot turning at the direction change positions, and movements of the work robot correcting the position and attitude of the work robot at the direction change positions based on markers included in images captured by the work robot's vision sensor.

11. The driving program generation device described in claim 10, wherein the path generation unit displays a driving area screen including map information of the driving area of ​​the work robot and start position information indicating the current position and attitude of the work robot within the driving area, and generates path information including the coordinates of the passing position and specified position of the work robot and the target attitude at each of the passing position and specified position, based on the position and attitude of the work robot set by an operator on the driving area screen.

12. The driving program generation device according to claim 11, wherein the driving area screen further includes path information indicating paths that the work robot can travel in the driving area.

13. The driving program generation device according to claim 11, wherein the driving area screen further includes information indicating the installation positions of the markers in the driving area.

14. A driving program generation device as described in any one of claims 10 to 13, wherein the driving program generation unit, when the amount of movement of a straight-line path that moves the work robot in one direction between the pass position and another position is equal to or greater than a threshold, sets an intermediate pass position at the installation position of the marker on the straight-line path, and generates the driving program to which an operation for correcting the position and posture of the work robot at the intermediate pass position has been added.

15. A driving program generation device as described in any one of claims 10 to 13, wherein, when the marker is installed on a straight-line path that moves the work robot in one direction between the pass position and another position, the driving program generation unit sets an intermediate pass position at the installation position of the marker on the straight-line path, and generates the driving program to which an operation for correcting the position and posture of the work robot at the intermediate pass position has been added.

16. A driving program generation method comprising: a step of receiving input operations from an operator, and generating route information including the coordinates of a designated position that is the destination of the work robot, and each of the pass positions that the work robot will pass through on the way to said designated position, and a target attitude that indicates the direction of travel of the work robot at each of said designated position and said pass positions; a step of calculating the amount of movement between each position and the direction change positions at which the work robot will change its direction of travel based on said route information, and generating a driving program that sequentially combines actions including the action of the work robot moving between each position, the action of turning at said direction change positions, and the action of correcting the position and attitude of the work robot at said direction change positions based on markers included in images captured by the work robot's vision sensor.

17. A program that causes a driving program generation device to execute the following steps: receiving input operations from an operator, and generating route information including the coordinates of a specified position that is the destination of the work robot and each of the pass positions that the work robot will pass through on the way to the specified position, and a target attitude that indicates the direction of travel of the work robot at each of the specified position and each of the pass positions; calculating the amount of movement between each position and the direction change positions where the work robot will change its direction of travel based on the route information, and generating a driving program that sequentially combines actions including the action of the work robot moving between each position, the action of turning at the direction change positions, and the action of correcting the position and attitude of the work robot at the direction change positions based on markers included in images captured by the work robot's vision sensor.

Citation Information

Patent Citations

  • Visual positioning method and system based on three-dimensional road sign

    CN114111787A

  • Information processing device, information processing system, information processing method, and program

    JP2022187584A

  • Marker stand

    JP2024102612A

  • Data center robotic device

    US20040243280A1