Control device, moving body, movement control system, control method, and storage medium

By obtaining the orientation of the target object and setting the prohibited area, optimizing the track path, the problem of high track computing load in the automatic moving body is solved, and the movement efficiency and calculation speed are improved.

CN115136091BActive Publication Date: 2025-07-29MITSUBISHI HEAVY IND LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202180015239.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-03-16
Filing Date
2021-02-05
Publication Date
2025-07-29
Estimated Expiration
2041-02-05

AI Technical Summary

Technical Problem

In the automatically moving moving body, the prior art has a high track computing load due to the wide search range, a long calculation time, and it is necessary to improve the performance of the computing device.

Method used

By setting the target object information acquisition unit to obtain the orientation of the target object, the area setting unit sets the prohibition area for prohibiting the passage of the track, the track setting unit sets the track to the prohibition area, and the movement control unit controls the movement of the moving body according to the track.

Benefits of technology

It reduces the computing load of the track, improves the movement efficiency of the moving body, and reduces the calculation time requirement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115136091B_ABST
    Figure CN115136091B_ABST
Patent Text Reader

Abstract

In a moving body that moves automatically, the arithmetic load of the trajectory is reduced. A control device is provided in the moving body that moves automatically. The control device includes: an object information acquisition unit that acquires a detection result of the orientation of a tray; a region setting unit that sets a prohibited region where the trajectory of the moving body is not allowed to pass according to the orientation of the tray; a trajectory setting unit that sets a trajectory from the moving body to a target position and posture that are at a specified position and orientation with respect to the tray so that the trajectory does not pass through the prohibited region; and a movement control unit that moves the moving body according to the trajectory.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a control device, a moving body, a moving control system, a control method, and a storage medium. Background Art

[0002] For example, a technique for automatically moving a moving body such as a forklift to a target position is known. In Patent Document 1, a method for determining an approach trajectory to a target object based on position information of the target object detected by a detection area sensor provided on the forklift is known.

[0003] Prior Art Documents

[0004] Patent Documents

[0005] Patent Document 1: Japanese Unexamined Patent Application Publication No. 2017-182502 Summary of the Invention

[0006] Technical Problem to be Solved by the Invention

[0007] The trajectory to the target object is calculated with the area between the moving body and the target object as the search range. In this case, since the search range is wide, the calculation load of the trajectory becomes high, so that the calculation takes time and there is a concern of work delay. Also, it is sometimes necessary to improve the performance of the arithmetic device. Therefore, in an automatically moving body, it is required to reduce the calculation load of the trajectory.

[0008] The present invention solves the above problems, and an object thereof is to provide a control device, a moving body, a moving control system, a control method, and a storage medium that can reduce the calculation load of a trajectory in an automatically moving body.

[0009] Means for Solving the Technical Problem

[0010] To solve the above problems and achieve the object, a control device for a moving body according to the present invention is provided in an automatically moving body, and the control device includes: a target object information acquisition unit that acquires a detection result of the orientation of a target object; a region setting unit that sets a prohibited region in which the trajectory of the moving body is not allowed to pass according to the orientation of the target object; a trajectory setting unit that sets a trajectory from the moving body to a target position that is at a specified position and orientation with respect to the target object so that the trajectory does not pass through the prohibited region; and a movement control unit that moves the moving body according to the trajectory.

[0011] To solve the above problems and achieve the object, a moving body according to the present invention includes the control device.

[0012] In order to solve the above problems and achieve the object, a control method for a moving body according to the present invention is a control method for controlling an automatically moving moving body, and includes the following steps: obtaining a detection result of the orientation of the target object; setting a prohibited area where the orbit of the moving body is prohibited from passing according to the orientation of the target object; setting an orbit from the moving body to a target position that is at a specified position and orientation relative to the target object so that the orbit does not pass through the prohibited area; and moving the moving body according to the orbit.

[0013] In order to solve the above problems and achieve the object, a storage medium according to the present invention is a computer-readable storage medium storing a program for causing a computer to execute a control method for controlling an automatically moving moving body, and the program includes the following steps: obtaining a detection result of the orientation of the target object; setting a prohibited area where the orbit of the moving body is prohibited from passing according to the orientation of the target object; setting an orbit from the moving body to a target position that is at a specified position and orientation relative to the target object so that the orbit does not pass through the prohibited area; and moving the moving body according to the orbit.

[0014] Advantages of the Invention

[0015] According to the present invention, in an automatically moving moving body, the computational load of the orbit can be reduced. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1 is a schematic diagram of a mobile control system according to the first embodiment.

[0017] Figure 2 is a schematic diagram of the structure of the moving body.

[0018] Figure 3 is a schematic block diagram of the management system.

[0019] Figure 4 is a schematic block diagram of the arithmetic device.

[0020] Figure 5 is a schematic block diagram of the control device of the moving body.

[0021] Figure 6 is a diagram for explaining the arrangement of pallets in the setting area.

[0022] Figure 7 is a schematic diagram for explaining the state of detecting the position information of the pallet.

[0023] Figure 8 is a schematic diagram for explaining an example of the interference position.

[0024] Figure 9It is a schematic diagram for explaining the setting of the track in the first embodiment.

[0025] Figure 10A It is a flowchart for explaining the movement control process of the moving body according to the first embodiment.

[0026] Figure 10B It is a schematic diagram showing another example of the sensor.

[0027] Figure 11 It is a schematic block diagram of the arithmetic device according to the second embodiment.

[0028] Figure 12 It is a schematic diagram for explaining the maximum inclination track.

[0029] Figure 13 It is a flowchart for explaining the movement control process of the moving body according to the second embodiment.

[0030] Figure 14 It is a schematic diagram for explaining the candidate track.

[0031] Figure 15 It is a flowchart for explaining the movement control process of the moving body according to the third embodiment.

[0032] Figure 16 It is a schematic diagram for explaining the candidate track.

[0033] Figure 17 It is a flowchart for explaining the movement control process of the moving body according to the fourth embodiment.

[0034] Figure 18A It is a schematic diagram of the mobile control system according to the fifth embodiment.

[0035] Figure 18B It is a schematic diagram showing an example of another setting area of the mobile control system according to the fifth embodiment.

[0036] Figure 19 It is a schematic diagram showing the structure of the moving body.

[0037] Figure 20 It is a structural diagram of the management system according to the fifth embodiment.

[0038] Figure 21 It is a structural diagram of the arithmetic device according to the fifth embodiment.

[0039] Figure 22 It is a structural diagram of the control device according to the fifth embodiment.

[0040] Figure 23It is a schematic diagram showing the configuration of trays within the setting area.

[0041] Figure 24 It is a schematic diagram explaining the detection status of the position information of the tray or adjacent objects.

[0042] Figure 25 It is a schematic diagram explaining the track setting.

[0043] Figure 26A It is a schematic diagram showing an example of the interference area when the width of the moving body is smaller than the width of the tray.

[0044] Figure 26B It is a schematic diagram showing an example of the interference area when the width of the moving body is larger than the width of the tray.

[0045] Figure 27A It is a flowchart explaining the movement control process of the moving body according to the sixth embodiment.

[0046] Figure 27B It is a schematic diagram showing another example of the sensor.

[0047] Figure 28 It is a structural diagram of the arithmetic unit according to the sixth embodiment.

[0048] Figure 29 It is a flowchart explaining the execution process of the movement control system.

[0049] Figure 30 It is a schematic diagram explaining the processing when configuring goods near the target object. Detailed implementation manners

[0050] Hereinafter, the preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In addition, the present invention is not limited by this embodiment, and when there are multiple embodiments, it also includes a mode formed by combining each embodiment.

[0051] (First Embodiment)

[0052] (Overall Structure of the Movement Control System)

[0053] Figure 1 It is a schematic diagram of the movement control system according to the first embodiment. As Figure 1As shown, the mobile control system 1 according to the first embodiment includes a mobile body 10, a management system 12, and an arithmetic device 14. The mobile control system 1 is a system for controlling the movement of the mobile body 10 belonging to the equipment W. The equipment W is, for example, equipment for logistics management such as a warehouse. A plurality of setting areas AR0 are provided in the area A within the equipment W. The area A is, for example, the floor of the equipment W and is an area where pallets P (goods) or the mobile body 10 move. The setting area AR0 is an area for setting the target object, that is, the pallet P (goods). The setting area AR0 is preset as an area where the target object, that is, the pallet P (goods), should be set. The setting area AR0 is distinguished, for example, by white lines, and the position (coordinates), shape, and size of the setting area AR0 are preset. In addition, in the present embodiment, the setting area AR0 is provided on the floor of the equipment W, that is, the area A, but it is not limited thereto. For example, it can be provided in the cargo compartment of a vehicle that transports the pallet P into the equipment W. And the setting area AR0 is divided for each pallet P, and one pallet P is arranged in the setting area AR0, but it is not limited thereto. For example, the setting area AR0 can be set as a free space for setting a plurality of pallets P. And in the Figure 1 example, the setting area AR0 is rectangular, but the shape and size can be arbitrary.

[0054] The mobile body 10 is a device capable of automatic movement. In the present embodiment, the mobile body 10 is a forklift, and more specifically, a so-called AGF (Automated Guided Forklift). As Figure 1As illustrated, the moving body 10 moves on the area A in the device W. The moving body 10 moves toward the setting area AR0 along the route R. When the moving body 10 reaches the start position AR1, it moves from the start position AR1 to the target position and posture (target position) AR2 along the track TR set according to the position information of the tray P to pick up the tray P. In the present embodiment, during the travel along the route R, the moving body 10 continuously performs the detection by the sensor 26 described later, and the position where the sensor 26 can detect the position information of the tray P becomes the start position AR1. That is, the start position AR1 can be said to be the position on the route R where the sensor 26 can detect the position information of the tray P (the detection of the position information of the tray P by the sensor 26 becomes effective). The target position and posture AR2 is the position and posture where the moving body 10 can pick up the tray P, which is a position and orientation that are in a specified position and orientation relative to the tray P. In the example of the present embodiment, the target position and posture AR2 can also be said to be the position and posture (orientation) of the moving body 10 where the moving body 10 can insert the fork 24 described later into the opening Pb of the tray P described later by moving straight without lateral movement. The moving body 10 starts to move straight from the target position and posture AR2 to pick up the tray P and convey the tray P to other places. The details of the movement along the route R and the track TR of the moving body 10 will be described later. Hereinafter, one direction along the area A is set as the direction X, and the direction orthogonal to the direction along the area A, that is, the direction X, is set as the direction Y. And the direction orthogonal to the area A, that is, the direction orthogonal to the directions X and Y, is set as the direction Z. The directions X and Y are horizontal directions, and the direction Z can be said to be the vertical direction.

[0055] (Moving body)

[0056] Figure 2 is a schematic diagram of the structure of the moving body. As Figure 2 shown, the moving body 10 includes a vehicle body 20, a mast 22, a fork 24, a sensor 26, and a control device 28. The vehicle body 20 includes wheels 20A. The mast 22 is provided at one end in the front-rear direction of the vehicle body 20. The mast 22 extends in the up-down direction (here, the direction Z) orthogonal to the front-rear direction. The fork 24 is movably mounted on the mast 22 along the direction Z. The fork 24 can also move relative to the mast 22 along the lateral direction of the vehicle body 20 (the direction intersecting the up-down direction and the front-rear direction). The fork 24 has a pair of claws 24A, 24B. The claws 24A, 24B extend from the mast 22 toward the front direction of the vehicle body 20. The claws 24A and 24B are arranged separately from each other in the lateral direction of the mast 22. Hereinafter, in the front-rear direction, the direction on one side of the fork 24 in the moving body 10 is set as the first direction, and the direction on the side where the fork 24 is not provided is set as the second direction.

[0057] The sensor 26 detects at least one of the position and orientation of an object existing around the vehicle body 20. It can be said that the sensor 26 also detects the position of the object relative to the moving body 10 and the orientation of the object relative to the moving body 10. In the present embodiment, the sensor 26 is provided on the mast 22 and detects the position and orientation of an object on the first direction side of the vehicle body 20. However, the detection direction of the sensor 26 is not limited to the first direction. For example, it can detect both the first direction side and the second direction side. In this case, as the sensor 26, a sensor for detecting the first direction side and a sensor for detecting the second direction side can be provided. The sensor 26 is, for example, a sensor that irradiates a laser beam. The sensor 26 irradiates a laser beam while scanning in one direction (here, the lateral direction), and detects the position and orientation of the object based on the reflected light of the irradiated laser beam. In addition, the sensor 26 is not limited to the above sensor, and can be a sensor that detects an object by any method. For example, it can be a camera or the like. Also, the position where the sensor 26 is provided is not limited to the mast 22. Specifically, for example, a safety sensor provided on the moving body 10 can be used as the sensor 26. By using the safety sensor, there is no need to provide a new sensor.

[0058] The control device 28 controls the movement of the moving body 10. The control device 28 will be described later.

[0059] (Management system)

[0060] Figure 3 is a schematic block diagram of a management system. The management system 12 is a system for managing the logistics in the device W. In the present embodiment, the management system 12 is a WMS (Warehouse Management System), but it is not limited to the WMS and can be any system. For example, it can be a backend system such as other production management systems. The position where the management system 12 is provided is arbitrary. It can be provided inside the device W or at a position separated from the device W and manage the device W from the separated position. The management system 12 is a computer and, as Figure 3 shown, includes a control unit 30 and a storage unit 32. The storage unit 32 is a memory that stores various information such as the operation content or programs of the control unit 30. For example, it includes at least one of a RAM (Random Access Memory), a main storage device such as a ROM (Read Only Memory), and an external storage device such as an HDD (Hard Disk Drive).

[0061] The control unit 30 is an arithmetic device, namely a CPU (Central Processing Unit). The control unit 30 includes a job determination unit 34. The control unit 30 realizes the job determination unit 34 and executes its processing by reading and executing a program (software) from the storage unit 32. In addition, the control unit 30 can execute the processing by one CPU, or can include multiple CPUs and execute the processing by these multiple CPUs. Moreover, the job determination unit 34 can be realized by a hardware circuit.

[0062] The job determination unit 34 determines the pallet P to be conveyed. Specifically, for example, based on the input work plan, the job determination unit 34 determines the job content indicating the information of the pallet P to be conveyed. The job content can also be said to be the information determining the pallet P to be conveyed. In the example of the present embodiment, the job determination unit 34 determines which pallet P (cargo) in which device is to be conveyed to where by when as the job content. That is, the job content is the information indicating the device storing the target pallet P, the target pallet P, the conveyance destination of the pallet P, and the conveyance period of the pallet P. The job determination unit 34 sends the determined job content to the arithmetic device 14.

[0063] (Arithmetic device)

[0064] Figure 4 is a schematic block diagram of an arithmetic device. The arithmetic device 14 is a device provided in the device W and that at least calculates information related to the movement of the moving body 10, etc. The arithmetic device 14 is a computer, as Figure 4 shown, and includes a control unit 40 and a storage unit 42. The storage unit 42 is a memory that stores various information such as the calculation content or programs of the control unit 40. For example, it includes at least one of a RAM, a main storage device such as a ROM, and an external storage device such as an HDD.

[0065] The control unit 40 is an arithmetic device, namely a CPU. The control unit 40 includes a job content acquisition unit 50, a moving body selection unit 52, and a route acquisition unit 54. The control unit 40 realizes the job content acquisition unit 50, the moving body selection unit 52, and the route acquisition unit 54, and executes these processes by reading and executing a program (software) from the storage unit 42. In addition, the control unit 40 can execute these processes by one CPU, or can include multiple CPUs and execute these processes by these multiple CPUs. Moreover, at least a part of the job content acquisition unit 50, the moving body selection unit 52, and the route acquisition unit 54 can be realized by a hardware circuit.

[0066] The work content acquisition unit 50 acquires information on the work content determined by the management system 12, that is, information on the pallet P to be conveyed. The work content acquisition unit 50 determines the setting area AR0 where the pallet P is set based on the information on the pallet P in the work content. For example, in the storage unit 42, the pallet P and the setting area AR0 where the pallet P is set are stored in association with each other, and the work content acquisition unit 50 determines the setting area AR0 by reading this information from the storage unit 42. The mobile body selection unit 52 selects the target mobile body 10. The mobile body selection unit 52 selects, for example, the target mobile body 10 from among a plurality of mobile bodies belonging to the equipment W. The mobile body selection unit 52 can select the target mobile body 10 by any method, but for example, based on the setting area AR0 determined by the work content acquisition unit 50, the mobile body 10 suitable for conveying the pallet P located in the setting area AR0 can be selected as the target mobile body 10.

[0067] The route acquisition unit 54 acquires information on the route R up to the setting area AR0 determined by the work content acquisition unit 50. For example, the route R is preset for each setting area AR0, and the route acquisition unit 54 acquires, for example, the route R set for the setting area AR0 determined by the work content acquisition unit 50 from the storage unit 42. In the present embodiment, the route R is a path from a preset start position to the setting area AR0. Here, the start position can be the position where the mobile body 10 stands by. The route R is preset based on the map information of the equipment W. The map information of the equipment W is information including position information of obstacles (such as pillars) provided in the equipment W or passages where the mobile body 10 can travel, and can be said to be information indicating the area where the mobile body 10 can move within the area A. In addition, the route R can be set based on the information on the vehicle specifications of the mobile body 10 in addition to the map information of the equipment W. The information on the vehicle specifications is, for example, specifications such as the size of the mobile body 10 or the minimum turning radius that affect the path where the mobile body 10 can move. When the route R is also set based on the information on the vehicle specifications, the route R can be set for each mobile body. In addition, the route R can be set by a person based on the map information or the information on the vehicle specifications, etc., or can be automatically set by a device such as the arithmetic unit 14 based on the map information or the information on the vehicle specifications, etc. When the route R is automatically set, for example, an intermediate point (Waypoint) that is desired to be passed can be specified, and in this case, while passing through the desired key points, the shortest route R that avoids obstacles (such as fixed objects like walls) can be set.

[0068] In addition, the route acquisition unit 54 can set the route R without reading the preset route R. In this case, the route acquisition unit 54 can generate a path from the current position of the mobile body 10 to the movement destination, that is, the setting area AR0, as the route R based on the position information of the target mobile body 10, the position information of the setting area AR0, and the map information of the equipment W.

[0069] The arithmetic unit 14 transmits the information of the acquired route R to the target mobile body 10. Since the route R is the path to the setting area AR0, it can be said to be information related to the movement of the mobile body 10.

[0070] (Control device of the mobile body)

[0071] Next, the control device 28 of the mobile body 10 will be described. Figure 5 is a schematic block diagram of the control device of the mobile body. The control device 28 controls the mobile body 10. The control device 28 sets the track TR to the target position and posture AR2 according to the detection result of the position or orientation of the pallet P detected by the sensor 26 of the mobile body 10. The method for setting the track TR will be described later. The control device 28 moves the mobile body 10 along the track TR to the target position and posture AR2, and makes the mobile body 10 pick up the pallet P. The control device 28 is a computer, such as Figure 5 shown, and includes a control unit 60 and a storage unit 62. The storage unit 62 is a memory that stores various information such as the operation content or programs of the control unit 60. For example, it includes at least one of a RAM, a main storage device such as a ROM, and an external storage device such as an HDD.

[0072] The control unit 60 is an arithmetic unit, that is, a CPU. The control unit 60 includes a route information acquisition unit 70, a movement control unit 72, an object information acquisition unit 74, an interference determination unit 76, a region setting unit 78, and a track setting unit 80. The control unit 60 realizes the route information acquisition unit 70, the movement control unit 72, the object information acquisition unit 74, the interference determination unit 76, the region setting unit 78, and the track setting unit 80 by reading programs (software) from the storage unit 62, and executes these processes. In addition, the control unit 60 can execute these processes through one CPU, or can include multiple CPUs and execute the processes through these multiple CPUs. And at least a part of the route information acquisition unit 70, the movement control unit 72, the object information acquisition unit 74, the interference determination unit 76, the region setting unit 78, and the track setting unit 80 can be realized by a hardware circuit.

[0073] The route information acquisition unit 70 acquires information on the route R from the arithmetic unit 14. The movement control unit 72 controls a drive unit of the moving body 10 or a movement mechanism such as a steering wheel to control the movement of the moving body 10. The movement control unit 72 moves the moving body 10 along the route R acquired by the route information acquisition unit 70. That is, the movement control unit 72 moves the moving body 10 in such a manner that it travels from the current position of the moving body 10 toward the setting area AR0 via the route R. The movement control unit 72 moves the moving body 10 in such a manner that it travels along the route R by successively grasping the position information of the moving body 10. The method for acquiring the position information of the moving body 10 may be arbitrary. For example, in the present embodiment, as Figure 1 shown, a detection body S is provided in the device W, and the movement control unit 72 acquires the position information of the moving body 10 based on the detection by the detection body S. Specifically, the moving body 10 irradiates a laser beam toward the detection body S and detects its own position in the device W by receiving the reflected light of the laser beam reflected by the detection body S. The position of the moving body 10 here is the two-dimensional coordinates in the directions X and Y in the area A of the device W. Hereinafter, unless otherwise specified, the position refers to the two-dimensional coordinates in the area A.

[0074] While the moving body 10 is traveling on the route R, the target object information acquisition unit 74 causes the sensor 26 of the moving body 10 to detect an object. That is, while the moving body 10 is traveling on the route R, the target object information acquisition unit 74 causes the sensor 26 to successively execute the object detection process. When the moving body 10 reaches a distance at which the position information of the tray P can be detected by the sensor 26, the sensor 26 detects the position information of the tray P by receiving, for example, the reflected light from the tray P. In the present embodiment, the position of the moving body 10 when the sensor 26 detects the position information of the tray P becomes the start position AR1. That is, the target object information acquisition unit 74 acquires the detection result of the position information of the tray P from the sensor 26 at the start position AR1.

[0075] Figure 6 It is a diagram for explaining the arrangement of trays in the setting area. As Figure 6As shown, the tray P has an opening Pb into which the fork 24 is inserted formed on one surface (side surface), i.e., the front surface Pa. The tray P is arranged in the setting area AR0 with the front surface Pa facing the start position AR1. The tray P is preferably arranged to fall within the setting area AR0, in other words, not to protrude from the setting area AR0. And when the tray P is arranged not to protrude from the setting area AR0, the size of the setting area AR0 is preferably set such that the inclination angle θ of the setting area AR0 with respect to the tray P does not exceed 45 degrees. That is, the inclination angle θ is set to fall within the range of 0 degrees or more and 45 degrees or less. The inclination angle θ refers to the deviation of the angle in the horizontal direction along the area AR with respect to the setting area AR0 of the tray P. For example, a straight line connecting the center point CP0 of the tray P and the midpoint CP in the horizontal direction of the front surface Pa of the tray P and orthogonal to the Z direction (vertical direction) is set as the straight line L1. Moreover, a straight line connecting the center point CA0 of the setting area AR0 and the midpoint CA1 of the side opposite to the start position AR1 of the setting area AR0 and orthogonal to the Z direction (vertical direction) is set as the straight line LA. In this case, it can be said that the angle formed by the straight line L1 and the straight line LA is the inclination angle θ. Here, the length of the side on the front surface Pa of the tray P is set as the length DX, and the length of the side on the side surface is set as the length DY. In this case, when the tray P is arranged not to protrude from the setting area AR0, in order to make the inclination angle θ not exceed 45 degrees, for example, at least one of the sides of the setting area AR0 is set to be shorter than {(DX / √2)+(DY / √2)}.

[0076] Figure 5 The target object information acquisition unit 74 shown acquires the detection result of the position information of the target object, i.e., the tray P, from the sensor 26 of the moving body 10 at the start position AR1. The position information of the tray P is information indicating the orientation of the tray P, and more specifically, information indicating the position and orientation of the tray P. Figure 7 It is a schematic diagram for explaining the state of detecting the position information of the tray. For example, in the case of a structure where the sensor 26 irradiates a laser beam, while the moving body 10 is traveling on the route R, the target object information acquisition unit 74 irradiates the laser beam LT while scanning the sensor 26 laterally (in the horizontal direction). When the moving body 10 reaches the start position AR1, the tray P located in front of the sensor 26 reflects the laser beam LT. The sensor 26 receives the reflected light from the tray P. The target object information acquisition unit 74 detects the position and orientation of the tray P based on the reflected light from the tray P received by the sensor 26. That is, as Figure 7As shown, when the moving body 10 reaches the start position AR1 on the route R, the target object information acquisition unit 74 acquires the detection result of the position and orientation of the tray P within the setting area AR0 from the sensor 26. The position of the tray P here is the position of the tray P relative to the moving body 10, which can also be said to be the direction and distance (i.e., coordinates) of the tray P relative to the moving body 10. The position of the tray P acquired by the target object information acquisition unit 74 can also be said to be the position of the tray P relative to the start position AR1.

[0077] Moreover, the orientation of the tray P refers to the direction in which the tray P faces relative to the moving body 10. More specifically, it refers to the direction in which the front surface Pa of the tray P faces relative to the start position AR1. For example, if the straight line connecting the midpoint CP1 of the tray P and the reference point CF of the moving body 10 and orthogonal to the direction Z (vertical direction) is set as the straight line L0, then it can be said that the slope of the straight line L1 relative to the straight line L0 is the orientation of the tray P. That is, the orientation of the tray P can be said to be the angle θP formed by the straight line L0 and the straight line L1, and the target object information acquisition unit 74 can calculate the angle θP. In addition, the reference point CF can be said to be the reference point of the start position AR1 and is preset with a position. The reference point CF can be set at an arbitrary position relative to the start position AR1. For example, the position overlapping with the midpoint in the horizontal direction of the moving body 10 that has reached the start position AR1 can be set as the reference point CF. In addition, the target object information acquisition unit 74 can calculate the position and orientation of the tray P based on the reflected light from the tray P gradually approaching the direction of the sensor 26 or the time from when the laser beam LT is irradiated until the reflected light is received.

[0078] When the moving body 10 reaches the start position AR1, that is, when the position information of the tray P is acquired, the movement control unit 72 stops traveling along the route R. Then, the movement control unit 72 moves the moving body 10 from the start position AR1 to the target position / posture AR2 according to the track TR set by the track setting unit 80 described later. That is, the moving body 10 travels along the route R until it reaches the start position AR1, and travels along the track TR from the start position AR1 to the target position / posture AR2. Hereinafter, the method for setting the track TR will be described.

[0079] Figure 5 The interference determination unit 76 shown determines whether the tray P is located at an interference position based on the position information of the tray P acquired by the target object information acquisition unit 74. Figure 8 It is a schematic diagram for explaining an example of the interference position. The interference position refers to the position and orientation of the tray P where the moving body 10 interferes with an obstacle and cannot reach the target position / posture AR2. Figure 8An example is shown where there is an obstacle Wa near the setting area AR0 and the front surface Pa of the tray P is significantly inclined toward the obstacle Wa. In this case, when the moving body 10 moves toward the target position / posture AR2 where the tray P can be picked up, interference with the obstacle Wa will occur midway regardless of which path is taken, and thus it is impossible to reach the target position / posture AR2 without interfering with the obstacle Wa. Thus, depending on the position of the obstacle Wa or the position and orientation of the tray P, interference between the moving body 10 and the obstacle Wa will definitely occur regardless of which path is taken, and sometimes it is impossible to set the trajectory TR up to the target position / posture AR2. Thus, the position and orientation of the tray P where the trajectory TR cannot be set are interference positions. The position and orientation of the tray P where the trajectory TR cannot be set, i.e., the interference positions, are determined based on the position (coordinates) of the setting area AR0 and the position (coordinates) of the obstacle Wa. Since the positions of the setting area AR0 and the obstacle Wa are determined in advance, the interference positions can be calculated in advance based on these. Also, since the interference positions sometimes depend on the information on the vehicle specifications of the moving body 10, the interference positions can also be calculated in advance based on the information on the vehicle specifications of the moving body 10. In the present embodiment, the arithmetic device 14, for example, pre-calculates the interference positions before reading the route R of the moving body 10. The arithmetic device 14 preferably calculates the interference positions based on the position (coordinates) of the start position AR1 in addition to the positions of the setting area AR0 and the obstacle Wa. The arithmetic device 14 calculates the interference positions for each setting area AR0. The interference determination unit 76 obtains information on the interference positions set for the setting area AR0 of the tray P that is the object, and determines whether the position and orientation of the tray P obtained by the target information acquisition unit 74 match the interference positions. Additionally, in Figure 8 In the example of, the obstacle Wa is a pillar, but it is not limited thereto, and any object that the moving body 10 should not contact can be set as the obstacle Wa. For example, the obstacle Wa can be a wall or another setting area AR0, etc.

[0080] When the position and orientation of the tray P are at the interference positions, it is assumed that the calculation of the trajectory TR has no solution and the control device 28 does not execute the calculation process of the trajectory TR described later. On the other hand, when the position and orientation of the tray P are not at the interference positions, it is assumed that the calculation of the trajectory TR has a solution and the control device 28 executes the calculation process of the trajectory TR described later. Thus, by determining whether it is at the interference positions before calculating the trajectory TR, it is possible to suppress the execution of unnecessary calculations when there is no solution. Also, by pre-calculating the interference positions, for example, it is possible to pre-grasp layout defects of the equipment W such as a wide numerical range (small allowable angular deviation) of the angle of the tray P set as the interference positions. Thus, by pre-grasping the layout defects of the equipment W and re-setting the setting area AR0, etc., it is possible to change the layout to an appropriate layout.

[0081] Figure 9 This is a schematic diagram for explaining the setting of the track in the first embodiment. As Figure 9 shown, the area setting unit 78 (refer to Figure 5 ) sets the allowable area A1 where the track TR is allowed to pass and the prohibited area A2 where the track TR is prohibited from passing according to the orientation of the tray P acquired by the target object information acquisition unit 74. The allowable area A1 is the area in the area A where the track TR set from here is allowed to overlap, and the prohibited area A2 is the area in the area A where the track TR set from here is prohibited from overlapping. The area setting unit 78 divides the area A by connecting the reference line of the moving body 10 and the tray P. In the divided area, the area on the side facing the tray P is set as the allowable area A1, and the area on the side opposite to the side facing the tray P is set as the prohibited area A2. The reference line in this embodiment is the straight line L0 connecting the midpoint CP1 of the tray P and the reference point CF of the moving body 10 (starting position AR1). Therefore, when the vector connecting the center point CP0 along the straight line L1 to the midpoint CP1 is decomposed into the first direction component along the straight line L0 and the second direction component orthogonal to the straight line L0, it can be said that the area on the direction side of the second direction component is the allowable area A1, and the area on the side opposite to the second direction component is the prohibited area A2.

[0082] The track setting unit 80 (refer to Figure 5 ) sets the track TR from the starting position AR1 (the moving body 10 located at the starting position AR1) to the target position and posture AR2. The track setting unit 80 sets the target position and posture AR2 according to the position information of the tray P acquired by the target object information acquisition unit 74, that is, the position and orientation of the tray P. That is, the position and posture (where the fork 24 can be inserted into the opening Pb of the tray P by going straight) that can pick up the tray P are calculated based on the position and orientation of the tray P and set as the target position and posture AR2. As an example, the position 1000 mm parallel to the axial direction of the opening Pb of the tray P from the entrance of the opening Pb can be set as the target position and posture AR2. Then, the track setting unit 80 sets the track TR in such a way that the track TR does not pass through the prohibited area A2 set in the area setting unit 78, in other words, passes through the allowable area A1. That is, the track setting unit 80 calculates the track TR that does not pass through the prohibited area A2 but passes through the allowable area A1 and reaches the starting position AR1 by excluding the prohibited area A2 from the search range of the track TR.

[0083] In this embodiment, the track setting unit 80 calculates the track TR by model predictive control (MPC: Model Predictive Control). Hereinafter, an example of the calculation method of the track TR will be described.

[0084] The control input u(k) of the moving body 10 is represented by the following formula (1).

[0085] [Equation 1]

[0086] u(k) = [v(k), φ(k)] T …(1)

[0087] Here, v(k) is the speed command value of the moving body 10, φ(k) is the yaw angular velocity command value of the moving body 10, and k represents the index of discrete time. The control input U(k) of the moving body 10 at each discrete time is represented by the following equation (2). In addition, N is the prediction range (Predictive horizon).

[0088] [Equation 2]

[0089] U(k) = [u(k), u(k + 1), …, u(k + N - 1)] T …(2)

[0090] The orbit setting unit 80 solves the optimization problem shown in the following equation (3) to obtain the optimal solution of the control input, that is, (k), u(k + 1), …, u(k + N - 1), and calculates the orbit TR. As a solution to this optimization problem, known techniques such as the sequential quadratic programming method or the interior point method can be used.

[0091] [Equation 3]

[0092] J(U(k)) → min…(3)

[0093] In addition, when calculating the orbit TR in this way, for example, the following constraint conditions shown in equations (4) to (8) are given.

[0094] [Equation 4]

[0095] x(k) = v(k)cosθ(k)…(4)

[0096] [Equation 5]

[0097] y(k) = v(k)sinθ(k)…(5)

[0098] [Equation 6]

[0099]

[0100] [Equation 7]

[0101] v(k) ≤ v MAX …(7)

[0102] [Equation 8]

[0103] -φ MAX ≤ φ(k) ≤ φ MAX ···(8)

[0104] Here, x is the coordinate of the moving body 10 in the X direction, y is the coordinate of the moving body 10 in the Y direction, θ is the inclination angle of the moving body 10 with respect to the reference axis, and L is the wheelbase representing the distance between the front and rear wheels of the vehicle V. v MAX , φ MAX are upper limit values of the preset speed and yaw angular velocity. Also, in the present embodiment, as a restrictive condition, the moving body 10 is also given the condition of not passing through the prohibited area A2.

[0105] In addition, there are sometimes multiple trajectories that can reach the target position and posture AR2 from the start position AR1. In this case, the trajectory setting unit 80 can calculate multiple trajectories that can reach the target position and posture AR2 from the start position AR1, and set the trajectory closest to the straight line L0 among these multiple trajectories as the trajectory TR. The straight line L0 is a trajectory when it is assumed that the tray P is not tilted (the angle θP is 0), and is a linear trajectory connecting from the start position AR1 to the target position and posture AR2. Therefore, by setting the trajectory closest to the straight line L0 as the trajectory TR, it is possible to reduce turning and quickly reach the target position and posture AR2.

[0106] If the trajectory TR is set in this way, the movement control unit 72 (refer to Figure 5 ) moves the moving body 10 from the start position AR1 to the target position and posture AR2 so as to pass through the trajectory TR. Then, the movement control unit 72 makes the moving body 10 go straight from the target position and posture AR2 and inserts the fork 24 into the opening Pb of the tray P to pick up the tray P. The movement control unit 72 transports the moving body 10 that has picked up the tray P to the set transport destination. In this way, the movement control unit 72 moves the moving body 10 along the trajectory TR from the start position AR1 to the target position and posture AR2, but it is not limited to this. For example, the movement along the trajectory TR and the movement based on direct feedback control can be switched to move the moving body 10 to the target position and posture AR2. As the control based on direct feedback, for example, the control based on the visual servo method as described in "Position and Posture Control of an Omnidirectional Mobile Robot Based on Linear Visual Servo" by Atsushi Orito and Akira Maru, Transactions of the Japan Society of Mechanical Engineers (C), Vol. 77, No. 774, p. 215 - 224, February 25, 2011 can be cited.

[0107] (Movement Control Process)

[0108] The movement control process of the moving body 10 described above will be described according to the flowchart. Figure 10A It is a flowchart for explaining the movement control process of the moving body according to the first embodiment. As Figure 10AAs shown, first, the arithmetic unit 14 acquires the route R up to the setting area AR0 of the tray P (step S10). Further, the arithmetic unit 14 pre-computes the interference positions set for the setting area AR0 of the tray P.

[0109] The control device 28 of the moving body 10 acquires the information of the route R acquired by the arithmetic unit 14 through the route information acquisition unit 70, and causes the moving body 10 to move along the route R through the movement control unit 72 (step S12). When the moving body 10 reaches the start position AR1, the control device 28 acquires the position information of the tray P, that is, the information indicating the position and orientation of the tray P, through the target information acquisition unit 74 (step S14). The target information acquisition unit 74 continuously performs detection by the sensor 26 while the moving body 10 travels on the route R, and at the start position AR1, detects the position information of the tray P and acquires the detection result. Then, the control device 28 determines whether the position and orientation of the tray P match the interference position by acquiring the information of the interference position from the arithmetic unit 14 through the interference determination unit 76 (step S16). When they match the interference position (step S16; "Yes"), that is, when there is no solution for the orbit TR to reach the tray P without interfering with the obstacle Wa, the control device 28 does not perform the setting of the prohibited area A2 or the setting of the orbit TR shown in steps S18 and S20 described later, and does not cause the moving body 10 to move from the start position AR1 and notifies an alarm (step S24). The alarm is information indicating that the orbit TR cannot be set and the tray P cannot be picked up. The alarm can be notified in any manner such as sound or signal.

[0110] When it does not match the interference position (step S16; "No"), that is, when there is a solution for the track TR, the control device 28 sets the prohibited area A2 and the permitted area A1 according to the position information of the tray P, that is, the orientation of the tray P, through the area setting unit 78 (step S18). The area setting unit 78 divides the area A by the straight line L0 (reference line) connecting the start position AR1 and the tray P. In the divided areas, the area on the side where the tray P faces is set as the permitted area A1, and the area on the side opposite to the side where the tray P faces is set as the prohibited area A2. Then, the control device 28 sets the track TR through the track setting unit 80 (step S20). The track setting unit 80 sets the target position and posture AR2 according to the position and orientation of the tray P. The track setting unit 80 sets the track TR from the start position AR1 to the target position and posture AR2 so that the track TR does not pass through the prohibited area A2 but passes through the permitted area A1. If the track TR is set, the control device 28 moves the moving body 10 from the start position AR1 to the target position and posture AR2 according to the track TR through the movement control unit 72 (step S22). The movement control unit 72 moves the moving body 10 from the target position and posture AR2 to the position of the tray P and inserts the fork 24 into the opening Pb of the tray P to pick up the tray P. Then, the movement control unit 72 conveys the moving body 10 that has picked up the tray P to the conveyance destination.

[0111] (Effect of this embodiment)

[0112] Here, the track TR of the moving body 10 is calculated with the area between the start position AR1 and the target position and posture AR2 as the search range. In this case, since the search range is wide, the calculation load of the track TR becomes high, and thus the calculation of the track takes time, so there is a concern that the working time becomes long. Also, sometimes it is necessary to improve the performance of the arithmetic device. In contrast, the control device 28 according to the present embodiment sets the prohibited area A2 according to the orientation of the tray P, and calculates the track TR in such a way that the track TR does not pass through the prohibited area A2. That is, the control device 28 excludes the prohibited area A2 from the search range and sets the permitted area A1 as the search range. Thus, the control device 28 can perform the calculation of the track TR by narrowing the search range, so the calculation load can be reduced. Moreover, since the prohibited area A2 is set according to the orientation of the tray P, the area that usually does not pass is excluded from the search range, and the search range can be narrowed to an area with a high probability of passing, so the search range can be narrowed to suppress the calculation load and also suppress the reduction of the calculation accuracy of the track TR. In particular, the control device 28 mounted on the moving body 10 preferably avoids the CPU from running at an overly high performance, so it is particularly preferred to calculate the track TR in this way to suppress the calculation load.

[0113] As described above, the control device 28 according to the present embodiment is provided in the moving body 10 that moves automatically, and includes a target information acquisition unit 74, a region setting unit 78, a trajectory setting unit 80, and a movement control unit 72. The target information acquisition unit 74 acquires the detection result of the orientation of the tray P (target). The region setting unit 78 sets a prohibited region A2 through which the trajectory TR of the moving body 10 is not allowed to pass according to the orientation of the tray P. The trajectory setting unit 80 sets the trajectory TR from the moving body 10 to the target position and orientation AR2 that are at a prescribed position and orientation with respect to the tray P so that the trajectory TR does not pass through the prohibited region. The movement control unit 72 moves the moving body 10 according to the trajectory TR. Since the control device 28 according to the present embodiment sets the prohibited region A2 according to the orientation of the tray P, it is possible to exclude a region that is not normally passed through from the search range of the trajectory TR and narrow down the search range to a region where the possibility of passing is high, thereby reducing the search range and suppressing the computational load, and also suppressing a decrease in the calculation accuracy of the trajectory TR.

[0114] Further, the region setting unit 78 divides the region A in which the moving body 10 can move by a reference line connecting the moving body 10 and the tray P, and sets the region on the side opposite to the region on the side toward which the tray P faces among the divided regions as the prohibited region A2. Since the control device 28 excludes the region that is not faced by the tray P and is not normally passed through from the search range of the trajectory TR and narrows down the search range to a region where the possibility of passing is high, it is possible to reduce the search range and suppress the computational load, and suppress a decrease in the calculation accuracy of the trajectory TR.

[0115] Further, the interference determination unit 76 acquires information on the interference position, and determines whether the tray P is located at the interference position based on the detection result of the target information acquisition unit 74. The interference position refers to the position of the tray P where the moving body 10 interferes with the obstacle Wa and cannot reach the target position and orientation AR2. The interference position is calculated in advance based on the position of the obstacle Wa around the tray P and the position of the installation region AR0. When it is determined that the tray P is not located at the interference position, the region setting unit 78 and the trajectory setting unit 80 set the prohibited region A2 and the trajectory TR. Sometimes, there is no solution for the trajectory TR that can reach the target position and orientation AR2 without interfering with the obstacle Wa due to the position of the tray P. The operation in the case of no solution particularly requires time. In contrast, the control device 28 determines whether there is a solution for the trajectory TR by determining whether the detected position of the tray P matches the interference position, and when there is a solution, performs the operation of the trajectory TR. Therefore, according to the control device 28, when there is no solution, the operation is not performed, and it is possible to suppress the working time from becoming long.

[0116] Further, the moving body 10 according to the present embodiment includes the control device 28. Therefore, according to this moving body 10, it is possible to suppress the computational load of the trajectory TR and suppress a decrease in the calculation accuracy of the trajectory TR.

[0117] Moreover, the mobile control system 1 according to the present embodiment includes a mobile body 10 and an arithmetic device 14. The arithmetic device 14 transmits information related to the movement of the mobile body 10 to the mobile body 10. The information related to the movement of the mobile body 10 is, for example, information on the route R or information on the interference position. According to the mobile control system 1, it is possible to suppress the arithmetic load of the track TR and suppress the reduction in the calculation accuracy of the track TR.

[0118] Moreover, the control method of the mobile body 10 according to the present embodiment is a control method for controlling the automatically moving mobile body 10. This control method includes the following steps: obtaining a detection result of the orientation of the tray P; setting a prohibited area A2 where the track TR of the mobile body 10 is prohibited from passing according to the orientation of the tray P; setting the track TR from the mobile body 10 to the target position and posture AR2 that are at a specified position and orientation with respect to the tray P so that the track TR does not pass through the prohibited area A2; and moving the mobile body 10 according to the track TR. According to this control method, it is possible to suppress the arithmetic load of the track TR and suppress the reduction in the calculation accuracy of the track TR.

[0119] Moreover, the storage medium according to the present embodiment is a computer-readable storage medium storing a program for causing a computer to execute a control method for controlling the automatically moving mobile body 10. This program includes the following steps: obtaining a detection result of the orientation of the tray P; setting a prohibited area A2 where the track TR of the mobile body 10 is prohibited from passing according to the orientation of the tray P; setting the track TR from the mobile body 10 to the target position and posture AR2 that are at a specified position and orientation with respect to the tray P so that the track TR does not pass through the prohibited area A2; and moving the mobile body 10 according to the track TR. According to this storage medium, it is possible to suppress the arithmetic load of the track TR and suppress the reduction in the calculation accuracy of the track TR.

[0120] (Example where the start position is set)

[0121] In the above description, the position on the route R where the sensor 26 can detect the position information of the tray P is the start position AR1, and the start position AR1 is not a preset position. However, the start position AR1 can be a preset position. In this case, the start position AR1 is preset for each setting area AR0 as the position where the sensor 26 can detect the position information of the tray P provided in the setting area AR0. In this case, the route R can be preset as the path from the start position to the start position AR1. When the mobile body 10 reaches the start position AR1 through the route R, at the start position AR1, the sensor 26 starts detecting the position information of the tray P to obtain the position information of the tray P. In addition, the example of presetting the start position AR1 can also be applied to another embodiment described later.

[0122] (Another example of the sensor)

[0123] Moreover, in the present embodiment, the control device 28 of the moving body 10 has obtained the detection result of the position information of the tray P from the sensor 26 provided on the moving body 10. However, the position information of the tray P is not limited to being detected by the sensor provided on the moving body 10, and can be detected by a sensor provided outside the moving body 10. Figure 10B It is a schematic diagram showing another example of the sensor. In Figure 10B this example, a sensor 26w is provided in the device W. The sensor 26w can detect the position information of the tray P in the same manner as the sensor 26 described above. That is, for example, the sensor 26w can irradiate a laser beam inside the device W and receive the reflected light of the laser beam from the tray P to detect the position information of the tray P, or can also detect the position information of the tray P by other means such as a camera. The control device 28 of the moving body 10 obtains the detection result of the position information of the tray P from the sensor 26w through a communication mechanism such as wireless communication, for example. In addition, the position where the sensor 26w is provided is arbitrary. For example, it can be fixedly provided on the device W. In this case, for example, it can be provided on the ceiling of the device W to detect the position and orientation of the tray P from above, or can be provided on the wall of the device W to detect the position and orientation of the tray P from the side, or can also be provided on both the ceiling and the wall. Moreover, the sensor 26w can be provided on a moving body other than the moving body 10. As a moving body other than the moving body 10, for example, it can be a vehicle provided with the sensor 26w and cruising inside the device W, or a flying body (such as a drone) provided with the sensor 26w and flying inside the device W, etc. In addition, the example of detecting the position information of the tray P by the sensor 26w provided outside the moving body 10 can also be applied to another embodiment described later.

[0124] (Another example of the system)

[0125] Moreover, in the present embodiment, the management system 12 determines the work content indicating the information of the tray P, and the arithmetic device 14 determines the moving body 10 to be the object or obtains the route R. However, the processing contents of the management system 12 and the arithmetic device 14 are not limited to this. For example, the management system 12 can be responsible for at least a part of the processing in the arithmetic device 14, and the arithmetic device 14 can be responsible for at least a part of the processing in the management system 12. Moreover, the management system 12 and the arithmetic device 14 can be one device (computer).

[0126] (Second Embodiment)

[0127] Next, the second embodiment will be described. The control device 28 according to the second embodiment is different from that of the first embodiment in the setting method of the allowable area A1 and the prohibited area A2. In the second embodiment, the description of the parts having the same structure as those of the first embodiment will be omitted.

[0128] Figure 11 It is a schematic block diagram of the arithmetic unit according to the second embodiment. Figure 12 It is a schematic diagram for explaining the maximum tilt track. As Figure 11 shown, the control unit 40a of the arithmetic unit 14a according to the second embodiment includes a candidate track setting unit 56. The candidate track setting unit 56 pre-calculates a track from the start position AR1 to the target position / posture AR2 when the tray P tilts at the upper limit angle θPmax as the maximum tilt track TRmax. The upper limit angle θPmax is the maximum value that the angle θP of the tray P can take. In Figure 11 the example of, a straight line L max is used to represent the straight line L1 when the angle θP of the tray P becomes the upper limit angle θPmax, and the angle formed by the straight line L0 (not shown) and the straight line L max at the upper limit angle θPmax can be said to be the upper limit angle θPmax. The upper limit angle θPmax is the maximum value that the angle θP can take assuming that the tray P is arranged so as not to protrude from the setting area AR0. The upper limit angle θPmax is preset according to the layout of the device W, for example, 45 degrees or the like. And, for example, the upper limit angle θPmax can be calculated based on the values allowed by the size of the setting area AR0 and the size of the tray P provided in the setting area AR0. The candidate track setting unit 56 calculates the target position / posture AR2 when the angle θP of the tray P is the upper limit angle θPmax. Then, the candidate track setting unit 56 calculates a track TR from the start position AR1 to the target position / posture AR2 as the maximum tilt track TRmax. The calculation method of the target position / posture AR2 or the track TR based on the candidate track setting unit 56 is the same as that of the track setting unit 80 of the first embodiment. In addition, when multiple tracks TR to the target position / posture AR2 at the upper limit angle θPmax can be set, the candidate track setting unit 56 preferably sets the track TR closest to the straight line L0 corresponding to the track assuming that the tray P is not tilted among the multiple tracks TR to the target position / posture AR2 at the upper limit angle θPmax as the maximum tilt track TRmax.

[0129] The area setting unit 78 of the control device 28 according to the second embodiment acquires information on the maximum inclination orbit TRmax from the candidate orbit setting unit 56. The area setting unit 78 uses the straight line L0 (reference line) connecting the tray P and the start position AR1 and the maximum inclination orbit TRmax to divide the area A. The area setting unit 78 sets the area between the straight line L0 and the maximum inclination orbit TRmax in the area A, that is, the area surrounded by the straight line L0 and the maximum inclination orbit TRmax, as the allowable area A1. Further, the area setting unit 78 sets the area other than the area between the straight line L0 and the maximum inclination orbit TRmax, that is, the area on the side where the tray P is not facing and the area outside the maximum inclination orbit TRmax, as the prohibited area A2. The orbit setting unit 80 sets the orbit TR so that the orbit TR passes through the allowable area A1 and does not pass through the prohibited area A2. The movement control unit 72 moves the moving body 10 to the target position / posture AR2 along the orbit TR set in this way.

[0130] In addition, the tray P may consider both cases where it tilts at the upper limit angle θPmax in one direction (for example, the clockwise rotation direction) and cases where it tilts at the upper limit angle θPmax in the other direction (for example, the counterclockwise rotation direction). In this case, the candidate orbit setting unit 56 calculates the maximum inclination orbit TRmax for each of these tilting directions. Then, the area setting unit 78 determines the direction in which the tray P tilts based on the orientation of the tray P, and acquires the maximum inclination orbit TRmax when the tray P tilts at the upper limit angle θPmax in the tilted direction. Then, the area setting unit 78 sets the area between the acquired maximum inclination orbit TRmax and the straight line L0 as the allowable area A1.

[0131] Figure 13 It is a flowchart for explaining the movement control process of the moving body according to the second embodiment. As Figure 13 shown, the arithmetic device 14a according to the second embodiment acquires the maximum inclination orbit TRmax preset by the candidate orbit setting unit 56 (step S8a). The candidate orbit setting unit 56 pre-calculates the orbit TR from the start position AR1 at the upper limit angle θPmax to the target position / posture AR2 as the maximum inclination orbit TRmax. The candidate orbit setting unit 56 pre-calculates the maximum inclination orbit TRmax for each setting area AR0. The candidate orbit setting unit 56 acquires the maximum inclination orbit TRmax set for the setting area AR0 of the tray P to be targeted. The processing of the subsequent steps S10 to S16 is the same as that of the first embodiment, and thus the description thereof is omitted. Further, in Figure 13 the example, step S10 is executed after step S8a, but the order of step S8a and step S10 is not limited to this and can be arbitrary.

[0132] When it is determined in step S16 that it is not in the interference position (step S16; "No"), the control device 28 sets the prohibited area A2 and the permitted area A1 based on the position information of the tray P and the maximum tilt track TRmax through the area setting unit 78 (step S18a). The area setting unit 78 sets the area between the straight line L0 and the maximum tilt track TRmax as the permitted area A1, and sets the other areas as the prohibited area A2. The processing after step S20 is the same as that of the first embodiment, so the description is omitted.

[0133] As described above, the area setting unit 78 according to the second embodiment obtains the maximum tilt track TRmax preset as the track TR when the tray P tilts at the specified upper limit angle θPmax. The area setting unit 78 sets the area between the maximum tilt track TRmax and the reference line, that is, the straight line L0, as the permitted area A1 through which the track TR is allowed to pass. In this way, in the second embodiment, the maximum tilt track TRmax is preset regardless of the detection result of the position information of the tray P. Then, the control device 28 sets the area outside the maximum tilt track TRmax as the prohibited area A2 in addition to the area on the side where the tray P is not facing, and only sets the area between the straight line L0 and the maximum tilt track TRmax as the search range. Therefore, according to the control device 28 of the second embodiment, the search range can be further reduced. And the maximum tilt track TRmax is the track TR when the tray P tilts to the maximum extent, and it is less likely that the actual track TR is set outside according to the maximum tilt track TRmax. Therefore, according to the control device 28 of the second embodiment, the search range can be further reduced, and the reduction of the calculation accuracy of the track TR can be suppressed.

[0134] In addition, when the tray P is configured not to protrude from the setting area AR0, the range of values that the angle θP (orientation) of the tray P can take depends on the position of the tray P. That is, for example, as Figure 6As shown, when the tray P is near the center of the setting area AR0, it can be set so that even if the tray P is tilted significantly, it will not protrude from the setting area AR0. Therefore, the allowable angle θP of the tray P becomes larger. However, when the tray P is arranged at a position separated from the center of the setting area AR0, if the tray P is tilted significantly, it will protrude from the setting area AR0. Therefore, the allowable angle θP of the tray P becomes smaller. That is, it can be said that the upper limit angle θPmax becomes smaller as the position of the tray P moves away from the center of the setting area AR0. In the second embodiment, the prohibited area A2 and the allowable area A1 can be set by utilizing this principle, and the search range of the track TR can be reduced. For example, in this case, the candidate track setting unit 56 of the arithmetic device 14 acquires the position information of the tray P acquired by the target object information acquisition unit 74, and calculates the upper limit angle θPmax based on the position of the tray P. As described above, there is a correlation between the position of the tray P and the upper limit angle θPmax. Therefore, the upper limit angle θPmax can be calculated based on the position of the tray P acquired by the target object information acquisition unit 74. The candidate track setting unit 56 sets the track TR when the upper limit angle θPmax is calculated as the maximum tilt track TRmax. The area setting unit 78 acquires this maximum tilt track TRmax and sets the area between the maximum tilt track TRmax and the straight line L0 as the allowable area A1. Thus, the maximum tilt track TRmax can be set according to the position of the tray P, and the search range can be reduced more appropriately according to the position of the tray P.

[0135] (Third Embodiment)

[0136] Next, the third embodiment will be described. The difference between the control device 28 according to the third embodiment and the second embodiment lies in the method of setting the allowable area A1 and the prohibited area A2. In the third embodiment, the description of the parts having the same structure as those in the second embodiment is omitted.

[0137] Figure 14 It is a schematic diagram for explaining candidate tracks. The candidate track setting unit 56 of the arithmetic device 14a according to the third embodiment sets a plurality of candidate tracks TRb. The candidate track TRb is a track TR from the start position AR1 to the target position / posture AR2 when the angle θP of the tray P is a preset angle. The candidate track setting unit 56 sets the angle θP to a specified value and calculates the target position / posture AR2 when the angle θP is the specified value. Then, the candidate track setting unit 56 calculates the track TR from the start position AR1 to the target position / posture AR2 as the candidate track TRb. As Figure 14As shown, the candidate orbit setting unit 56 calculates candidate orbits TRb in the same manner by varying the angle θP of the tray P, and calculates candidate orbits TRb for each angle θP of the tray P. The maximum value of the angle θP when calculating the candidate orbit TRb is the upper limit angle θPmax. That is, the candidate orbit setting unit 56 sets the angle θP of the tray P to different values within the range from 0 degree to the upper limit angle θPmax and calculates candidate orbits TRb for each angle θP of the tray P. The difference between the angles θP of each candidate orbit TRb is preferably a constant value. In other words, the candidate orbit setting unit 56 preferably calculates candidate orbits TRb when the angle θP changes by a specified amount. The specified amount here, that is, the difference between the angles θP of the candidate orbits TRb closest to each other in terms of the angle θP, is set as the difference value. This difference value can be arbitrarily set, for example, it can be about 5 degrees. In addition, the calculation method of the target position and posture AR2 or the orbit TR based on the candidate orbit setting unit 56 is the same as the calculation method of the second embodiment. And hereinafter, the angle θP used in the operation of the candidate orbit TRb will be appropriately referred to as the operation angle.

[0138] The area setting unit 78 of the control device 28 according to the third embodiment acquires information on each candidate orbit TRb from the candidate orbit setting unit 56. The information on the candidate orbit TRb here also includes information on the operation angles used in the calculation of the candidate orbit TRb. The area setting unit 78 divides the area A using the information on the orientation of the tray P acquired by the target information acquisition unit 74 and the candidate orbit TRb. Specifically, the area setting unit 78 acquires the angle θP of the tray P detected by the sensor 26 from the target information acquisition unit 74. The area setting unit 78 extracts the first candidate orbit TRb1 and the second candidate orbit TRb2 from the plurality of candidate orbits TRb based on the angle θP of the tray P and the information on the operation angles. The first candidate orbit TRb1 is the candidate orbit TRb among the candidate orbits TRb in which the operation angle is less than the angle θP of the tray P detected by the sensor 26 and is the closest to the angle θP of the tray P detected by the sensor 26. Also, the second candidate orbit TRb2 is the candidate orbit TRb among the candidate orbits TRb in which the operation angle is greater than the angle θP of the tray P detected by the sensor 26 and is the closest to the angle θP of the tray P detected by the sensor 26. The area setting unit 78 sets the area between the first candidate orbit TRb1 and the second candidate orbit TRb2 thus extracted, that is, the area surrounded by the first candidate orbit TRb1 and the second candidate orbit TRb2 as the allowable area A1. Then, the area setting unit 78 sets the area other than the area between the first candidate orbit TRb1 and the second candidate orbit TRb2 as the prohibited area A2. The orbit setting unit 80 sets the orbit TR so that the orbit TR passes through the allowable area A1 and does not pass through the prohibited area A2. The movement control unit 72 moves the moving body 10 to the target position and posture AR2 along the orbit TR thus set.

[0139] In addition, cases where the tray P is tilted by the upper limit angle θPmax in one direction (for example, the clockwise rotation direction) and cases where the tray P is tilted by the upper limit angle θPmax in the other direction (for example, the counterclockwise rotation direction) are both considered. In this case, the candidate orbit setting unit 56 calculates the candidate orbit TRb for each operation angle for each direction of each tilt. Then, the area setting unit 78 determines in which direction the tray P is tilted based on the orientation of the tray P and acquires the candidate orbit TRb for each operation angle of the tray P tilted toward the tilted direction side.

[0140] Figure 15 is a flowchart for explaining the movement control process of the moving body according to the third embodiment. As Figure 15As shown, the arithmetic unit 14a according to the third embodiment acquires a plurality of candidate orbits TRb preset in advance by the candidate orbit setting unit 56 (step S8b). The candidate orbit setting unit 56 presets the candidate orbits TRb for each arithmetic angle. The candidate orbit setting unit 56 acquires the candidate orbits TRb set for the setting area AR0 of the pallet P that is the object. The processing of steps S10 to S16 after that is the same as that of the first embodiment, and thus the description thereof is omitted. In addition, in the example of Figure 15 , step S10 is executed after step S8b, but the order of step S8b and step S10 is not limited to this and can be arbitrary.

[0141] When it is determined in step S16 that it is not in the interference position (step S16; "No"), the control device 28 sets the prohibited area A2 and the permitted area A1 based on the position information of the pallet P and the candidate orbit TRb through the area setting unit 78 (step S18b). The area setting unit 78 extracts the first candidate orbit TRb1 and the second candidate orbit TRb2 based on the arithmetic angle of the candidate orbit TRb and the angle θP of the pallet P. Then, the area setting unit 78 sets the area between the first candidate orbit TRb1 and the second candidate orbit TRb2 as the permitted area A1, and sets the rest as the prohibited area A2. The processing after step S20 is the same as that of the first embodiment, and thus the description thereof is omitted.

[0142] As described above, in the third embodiment, the area setting unit 78 acquires a plurality of candidate tracks TRb calculated in advance as the operation angles (tilt angles) of the moving body 10 for each tray P. The area setting unit 78 sets an allowable area A1 through which the track TR of the moving body 10 is allowed to pass, based on the operation angles in the candidate tracks TRb and the orientation of the tray P acquired by the target information acquisition unit 74. The track setting unit 80 sets the track TR to pass through the allowable area A1. Thus, in the third embodiment, the candidate tracks TRb for each operation angle are set in advance without relying on the detection result of the position information of the tray P. Then, the control device 28 sets the prohibited area A2 to extend to an area outside the first candidate track TRb1 and the second candidate track TRb2, that is, the prohibited area A2 is set wider than the area on the side where the tray P is not facing or wider than the area outside the maximum tilt track TRmax. In other words, the control device 28 makes the search range further narrower by setting the area between the first candidate track TRb1 and the second candidate track TRb2 as the allowable area A1. Therefore, according to the control device 28 of the third embodiment, the search range can be further reduced. Also, since the outside of the first candidate track TRb1 and the second candidate track TRb2 are tracks in the direction where the tray P is not facing, the possibility that the outside of the first candidate track TRb1 and the second candidate track TRb2 is set as the actual track TR is low. Therefore, according to the control device 28 of the third embodiment, the search range can be further reduced, and a decrease in the calculation accuracy of the track TR can be suppressed.

[0143] (Fourth Embodiment)

[0144] Next, the fourth embodiment will be described. The difference between the control device 28 according to the fourth embodiment and the third embodiment lies in the method of setting the allowable area A1 and the prohibited area A2. In the fourth embodiment, the description of the parts having the same structure as those in the third embodiment will be omitted.

[0145] Figure 16It is a schematic diagram for explaining candidate orbits. The candidate orbit setting unit 56 of the arithmetic unit 14a according to the fourth embodiment sets a plurality of candidate orbits TRb. In the fourth embodiment, for example, compared with the third embodiment, the difference in the arithmetic angle of each candidate orbit TRb is small. In the fourth embodiment, even when the angle θP used in the calculation of the orbit TR of the moving body 10 deviates from the actual inclination angle of the pallet P by this difference, for example, it is preferably set so that the pallet P can be picked up by the horizontal movement (side shift) of the fork 24 or the like. For example, the difference in the fourth embodiment is preferably greater than 0 degrees and 1 degree or less, and more preferably 0.5 degrees or more and 1 degree or less. In addition, in the fourth embodiment, the calculation method of the candidate orbit TRb when the arithmetic angle is set is the same as that in the third embodiment.

[0146] The control device 28 according to the fourth embodiment does not perform the calculation of the orbit TR but selects the orbit TR from the candidate orbits TRb. That is, the control device 28 extracts the candidate orbit TRb whose arithmetic angle is closest to the angle θP of the pallet P acquired by the target object information acquisition unit 74 and sets the candidate orbit TRb as the actual orbit TR. For example, the area setting unit 78 according to the fourth embodiment acquires the information of each candidate orbit TRb from the candidate orbit setting unit 56. The area setting unit 78 uses the information of the orientation of the pallet P acquired by the target object information acquisition unit 74 and the candidate orbit TRb to distinguish the area A. Specifically, the area setting unit 78 acquires the angle θP of the pallet P detected by the sensor 26 from the target object information acquisition unit 74. The area setting unit 78 extracts the candidate orbit TRb whose arithmetic angle is closest to the angle θP of the pallet P detected by the sensor 26 from the plurality of candidate orbits TRb according to the angle θP of the pallet P and the information of the arithmetic angle. The area setting unit 78 sets the extracted candidate orbit TRb as the allowable area A1, and sets the area other than the candidate orbit TRb, that is, the area that does not overlap with the candidate orbit TRb, as the prohibited area A2. The orbit setting unit 80 does not need to calculate the orbit TR by calculation, but sets (adopts) the candidate orbit TRb set as the allowable area A1, that is, the candidate orbit TRb whose arithmetic angle is closest to the detected angle θP of the pallet P, as the orbit TR. The movement control unit 72 moves the moving body 10 to the target position and posture AR2 along the orbit TR set in this way.

[0147] In addition, both cases where the tray P is tilted at the upper limit angle θPmax in one direction (e.g., the clockwise rotation direction) and cases where the tray P is tilted at the upper limit angle θPmax in the other direction (e.g., the counterclockwise rotation direction) are considered. In this case, for each direction of each tilt, the candidate orbit setting unit 56 calculates the candidate orbit TRb for each operation angle. Then, the control device 28 determines the direction in which the tray P is tilted based on the orientation of the tray P, and acquires the candidate orbit TRb for each operation angle when the tray P is tilted toward the tilted direction side.

[0148] Figure 17 is a flowchart for explaining the movement control process of the moving body according to the fourth embodiment. As Figure 17 shown, the arithmetic device 14a according to the fourth embodiment acquires a plurality of candidate orbits TRb preset by the candidate orbit setting unit 56 (step S8c). The candidate orbit setting unit 56 sets the candidate orbit TRb for each operation angle. The candidate orbit setting unit 56 acquires the candidate orbit TRb set for the setting area AR0 of the tray P that is the object. The processing of steps S10 to S16 after that is the same as that of the first embodiment, so the description is omitted. In addition, in Figure 17 the example of, step S10 is executed after step S8c, but the order of step S8c and step S10 is not limited to this and can be arbitrary.

[0149] When it is determined in step S16 that it is not in the interference position (step S16; "No"), the control device 28, through the area setting unit 78, sets the prohibited area A2 and the permitted area A1 based on the position information of the tray P and the candidate orbit TRb (step S18c). The area setting unit 78 extracts the candidate orbit TRb whose operation angle is closest to the angle θP of the tray P based on the operation angle of the candidate orbit TRb and the angle θP of the tray P, and sets this candidate orbit TRb as the permitted area A1. Then, the control device 28, through the orbit setting unit 80, uses the candidate orbit TRb set as the permitted area A1 as the orbit TR (step S20c). The processing after step S22 is the same as that of the first embodiment, so the description is omitted.

[0150] As described above, in the fourth embodiment, the area setting unit 78 sets the candidate orbit TRb whose operation angle (tilt angle) is closest to the orientation of the tray P acquired by the target information acquisition unit 74 as the allowable area A1. The orbit setting unit 80 sets the candidate orbit TRb set as the allowable area A1 as the orbit TR. In this way, in the third embodiment, the candidate orbit TRb for each operation angle is preset without depending on the detection result of the position information of the tray P. Then, the control device 28 uses the candidate orbit TRb closest to the detected orientation of the tray P as the orbit TR without performing the calculation of the orbit TR. Therefore, according to the control device 28 of the fourth embodiment, since there is no need for the calculation process of the orbit TR, the operation load can be further reduced. Also, by adopting the candidate orbit TRb closest to the angle θP of the detected tray P, the reduction in the selection accuracy of the orbit TR can be suppressed.

[0151] In addition, in the third embodiment, the area surrounded by the first candidate orbit TRb1 and the second candidate orbit TRb2 is set as the search range to calculate the orbit TR. However, depending on the conditions, similar to the fourth embodiment, the orbit TR may not be calculated and the pre-calculated candidate orbit TRb may be set as the orbit TR. For example, in the third embodiment, when there is a candidate orbit TRb whose difference between the orbit TR and the operation angle becomes equal to or less than a threshold value, the control device 28 does not calculate the orbit TR and uses this candidate orbit TRb as the orbit TR. The threshold value here can be arbitrarily set, for example, 1 degree or the like.

[0152] (Fifth Embodiment)

[0153] Next, the fifth embodiment will be described. In the fifth embodiment, when conveying the target object, i.e., the tray P, it is determined whether there is interference with an adjacent object arranged nearby. When there is no interference, the tray P is conveyed, which is different from the first to fourth embodiments in this regard. The fifth embodiment can be applied to the first to fourth embodiments. That is, for example, when setting an orbit in a manner that does not pass through the prohibited area by any one of the methods in the first to fourth embodiments, and when it is determined whether there is interference with an adjacent object when the tray P is conveyed along this orbit, if there is no interference, this orbit can be adopted and the moving body 10 can be moved along this orbit.

[0154] (Overall Structure of the Mobile Control System)

[0155] Figure 18A is a schematic diagram of the mobile control system according to the fifth embodiment. As Figure 18AAs shown, the mobile control system 1 according to the fifth embodiment includes a mobile body 10, a management system 12, and an arithmetic device 14. The mobile control system 1 is a system for controlling the movement of the mobile body 10 belonging to the equipment W. The equipment W is, for example, equipment used for logistics management such as a warehouse. A plurality of setting areas AR0 are provided in the area A within the equipment W. The area A is, for example, the floor of the equipment W, which is the area where the pallet P (goods) or the mobile body 10 moves. The setting area AR0 is an area for setting the target object, that is, the pallet P (goods). The setting area AR0 is preset as the area where the target object, that is, the pallet P (goods), should be set. The setting area AR0 is, for example, demarcated by white lines, etc., and the position (coordinates), shape, and size of the setting area AR0 are preset. In addition, in the present embodiment, the setting area AR0 is set on the floor of the equipment W, that is, the area A, but it is not limited thereto. For example, it can be set in the carriage of a vehicle that transports the pallet P into the equipment W. And, the setting area AR0 is zoned for each pallet P, and one pallet P is arranged in the setting area AR0, but it is not limited thereto. For example, the setting area AR0 can be set as a free space for arranging a plurality of pallets P. And, in Figure 18A the example of, the setting area AR0 is rectangular, but the shape and size can be arbitrary. Figure 18B is a schematic diagram showing an example of another setting area of the mobile control system according to the fifth embodiment. As Figure 18B shown, two lines are drawn parallel in the longitudinal direction, and the setting area can be within the width range of these two lines. In this case, the pallet P is arranged longitudinally within the width range of the two lines drawn in the longitudinal direction.

[0156] The mobile body 10 is a device capable of automatic movement. In the present embodiment, the mobile body 10 is a forklift, and more specifically, it is a so-called AGF (Automated Guided Forklift) or AGV (Automated Guided Vehicle), etc. As Figure 18AAs illustrated, the moving body 10 moves on the area A in the device W. The moving body 10 moves toward the setting area AR0 along the route R. When the moving body 10 reaches the start position AR1, it moves from the start position AR1 to the target position and posture AR2 along the track TR1 set according to the position information of the tray P to pick up the tray P. In the present embodiment, during the movement along the route R, the moving body 10 continuously performs the detection by the sensor 26 described later, and the position where the sensor 26 can detect the position information of the tray P becomes the start position AR1. That is, the start position AR1 can be said to be the position on the route R where the sensor 26 can detect the position information of the tray P (the detection of the position information of the tray P by the sensor 26 becomes effective). The target position and posture AR2 is the position and posture that become a prescribed position and posture with respect to the tray P, and can be said to be the position and posture where the moving body 10 can pick up the tray P. In the example of the present embodiment, the target position and posture AR2 can also be said to be the position and posture (orientation) of the moving body 10 where the moving body 10 can insert the fork 24 of the moving body 10 described later into the opening Pb of the tray P described later without lateral movement. The moving body 10 moves straight from the target position and posture AR2 to pick up the tray P, and conveys the tray P along the conveying track TR2. The details of the movement along the route R, the track TR1, and the conveying track TR2 of the moving body 10 will be described later. Hereinafter, one direction along the area A is set as the direction X, and the direction orthogonal to the direction X along the area A is set as the direction Y. And, the direction orthogonal to the area A, that is, the direction orthogonal to the directions X and Y is set as the direction Z. The directions X and Y are horizontal directions, and the direction Z can be said to be the vertical direction.

[0157] In the device W, sometimes an adjacent object PA is arranged near the setting area AR0 where the tray P is set. The adjacent object PA can be said to be an object arranged near the tray P as the target object. In the following description, the adjacent object PA is set as a tray (cargo) arranged near the setting area AR0, but it is not limited thereto, and can be any object, and can also be a conveying object such as a tray or cargo, or a structure such as a pillar, a wall, or a fence. In addition, hereinafter, an example will be described in which the adjacent object PA is arranged in the setting area AR0A other than the setting area AR0 and the setting area AR0A is adjacent to the setting area AR0.

[0158] (Moving body)

[0159] Figure 19 is a schematic diagram of the structure of the moving body. As Figure 19As shown, the moving body 10 includes a vehicle body 20, a mast 22, forks 24, a sensor 26, and a control device 28. The vehicle body 20 includes wheels 20A. The mast 22 is provided at one end of the vehicle body 20 in the front-rear direction. The mast 22 extends in the up-down direction (here, the Z direction) orthogonal to the front-rear direction. The forks 24 are movably mounted on the mast 22 along the Z direction. The forks 24 may also be movable relative to the mast 22 along the lateral direction of the vehicle body 20 (the direction intersecting the up-down direction and the front-rear direction). The forks 24 have a pair of claws 24A and 24B. The claws 24A and 24B extend in a direction separating from the vehicle body 20 perpendicularly to the mast 22. The claw 24A and the claw 24B are arranged separately from each other in the lateral direction of the mast 22. Hereinafter, in the front-rear direction, the direction on one side of the forks 24 in the moving body 10 is set as the first direction, and the direction on the side where the forks 24 are not provided is set as the second direction.

[0160] The sensor 26 detects at least one of the position and the posture of an object existing around the vehicle body 20. It can also be said that the sensor 26 detects the position of the object relative to the moving body 10 and the posture of the object relative to the moving body 10. In the present embodiment, the sensor 26 is provided on the mast 22 and detects the position and the posture of an object on the first direction side of the vehicle body 20. However, the detection direction of the sensor 26 is not limited to the first direction. For example, it can detect both the first direction side and the second direction side. In this case, as the sensor 26, a sensor for detecting the first direction side and a sensor for detecting the second direction side can be provided. The sensor 26 is, for example, a sensor (laser sensor) that irradiates a laser beam. The sensor 26 irradiates a laser beam while scanning in one direction (here, the lateral direction), and detects the position and the posture of an object based on the reflected light of the irradiated laser beam. In addition, the sensor 26 is not limited to the above sensor, and can be a sensor that detects an object by any method. For example, it can be a camera, an image sensor, etc. Also, the position where the sensor 26 is provided is not limited to the mast 22. Specifically, for example, a safety sensor provided on the moving body 10 can be used as the sensor 26. By using the safety sensor, there is no need to provide a new sensor.

[0161] The control device 28 controls the movement of the moving body 10. The control device 28 will be described later.

[0162] (Management system)

[0163] Figure 20It is a structural diagram of a management system. The management system 12 is a system for managing the logistics in the management device W. In the present embodiment, the management system 12 is a WMS (Warehouse Management System), but it is not limited to the WMS and can be any system. For example, it can be a backend system such as other production management systems. The location where the management system 12 is set is arbitrary. It can be set within the device W or at a location separated from the device W and manage the device W via wired communication or wireless communication from the separated location. The management system 12 includes a computer. As Figure 20 shown, it includes a control unit 30 and a storage unit 32. The storage unit 32 is a storage device that stores various information such as the operation content or programs of the control unit 30. For example, it includes at least one of an external storage device such as a RAM (Random Access Memory), a main storage device such as a ROM (Read Only Memory), an HDD (Hard Disk Drive), and an SSD (Solid State Drive).

[0164] The control unit 30 includes an arithmetic device, that is, a CPU (Central Processing Unit). The control unit 30 includes a job determination unit 34. The control unit 30 realizes the job determination unit 34 by reading and executing a program (software) from the storage unit 32 and executes its processing. In addition, the control unit 30 can execute the processing through one CPU or can include multiple CPUs and execute the processing in parallel through these multiple CPUs. And the job determination unit 34 can be realized by a hardware circuit.

[0165] The job determination unit 34 determines the pallet P to be the object of conveyance. Specifically, the job determination unit 34 determines, for example, according to the input work plan, the job content indicating the information of the pallet P to be the object of conveyance. The job content can also be said to be to determine the information of the pallet P to be the object of conveyance. In the example of the present embodiment, the job determination unit 34 determines which pallet P (goods) existing in which device is to be conveyed to where by when as the job content. That is, the job content is the information indicating the device where the target pallet P is stored, the storage location, the target pallet P, the conveyance destination of the pallet P, and the conveyance period of the pallet P. The job determination unit 34 sends the determined job content to the arithmetic device 14.

[0166] (Arithmetic device)

[0167] Figure 21It is a schematic structural diagram of an arithmetic device. In the present embodiment, the arithmetic device 14 is provided in the device W and is a device that at least calculates information related to the movement of the moving body 10, etc. In addition, the arithmetic device 14 is not limited to being provided in the device W and can be provided in another building different from the device W or in a control center located at a position sufficiently far from the device W, and can perform electrical communication with the management system 12 provided in the device W via wireless communication or wired communication. The arithmetic device 14 is a computer, as Figure 21 shown, and includes a control unit 40 and a storage unit 42. The storage unit 42 is a memory that stores various information such as the calculation content or programs of the control unit 40. For example, it includes at least one of a RAM, a main storage device such as a ROM, an external storage device such as an HDD, and an SSD.

[0168] The control unit 40 is a part that performs arithmetic processing. That is, it can be constituted by a CPU. The control unit 40 includes a work content acquisition unit 50, a moving body selection unit 52, and a route acquisition unit 54. The control unit 40 realizes the work content acquisition unit 50, the moving body selection unit 52, and the route acquisition unit 54 by reading and executing a program (software) from the storage unit 42 and executes these processes. In addition, the control unit 40 can execute these processes by one CPU, or can include multiple CPUs and execute the processes in parallel by these multiple CPUs. And at least a part of the work content acquisition unit 50, the moving body selection unit 52, and the route acquisition unit 54 can be realized by a hardware circuit.

[0169] The work content acquisition unit 50 acquires information on the work content determined by the management system 12, that is, information on the pallet P that is the object to be transported. The work content acquisition unit 50 determines the setting area AR0 where the pallet P is set based on the information on the pallet P in the work content. For example, the pallet P and the setting area AR0 where the pallet P is set are stored in the storage unit 42 in an associated manner, and the work content acquisition unit 50 determines the setting area AR0 by reading this information from the storage unit 42. The moving body selection unit 52 selects the target moving body 10. The moving body selection unit 52 selects the target moving body 10 from, for example, a plurality of moving bodies 10 belonging to the device W. The moving body selection unit 52 can select the target moving body 10 by any method. For example, according to the setting area AR0 determined by the work content acquisition unit 50, the moving body 10 suitable for transporting the pallet P located in the setting area AR0 can be selected as the target moving body 10.

[0170] The route acquisition unit 54 acquires information on the route R up to the set area AR0 determined by the work content acquisition unit 50. For example, a route R is preset for each set area AR0. The route acquisition unit 54 acquires, for example, from the storage unit 42 the route R set for the set area AR0 determined by the work content acquisition unit 50. In the present embodiment, the route R is a path from a preset start position to the set area AR0. The start position here can be the position where the mobile body 10 stands by. The route R is preset according to the map information of the device W. The map information of the device W is information including position information of obstacles (posts, walls, fences, etc.) provided in the device W or passages through which the mobile body 10 can travel, and can be said to be information indicating the area where the mobile body 10 can move within the area A. Further, the route R can be set according to the information on the vehicle specifications of the mobile body 10 in addition to the map information of the device W. The information on the vehicle specifications is, for example, specifications such as the size of the mobile body 10 or the minimum turning radius that affect the path along which the mobile body 10 can move. When the route R is also set according to the information on the vehicle specifications, the route R can be set for each mobile body. In addition, the route R can be set by a person according to the map information, the information on the vehicle specifications, etc., or can be automatically set by a device such as the arithmetic unit 14 according to the map information, the information on the vehicle specifications, etc. When the route R is automatically set, for example, an intermediate point (Waypoint) that is desired to be passed through can be specified. In this case, while passing through the desired intermediate point, the shortest route R that avoids obstacles (fixed objects such as posts, walls, fences) can be set.

[0171] In addition, the route acquisition unit 54 can set the route R without reading the preset route R. In this case, the route acquisition unit 54 can generate, as the route R, a path from the current position of the mobile body 10 to the movement destination, i.e., the set area AR0, based on the position information of the mobile body 10 that is the object, the position information of the set area AR0, and the map information of the device W.

[0172] The arithmetic unit 14 transmits the information on the route R generated as described above to the mobile body 10 that is the object. Since the route R is a path up to the set area AR0, it can be said to be information related to the movement of the mobile body 10.

[0173] (Control device of the mobile body)

[0174] Next, the control device 28 of the mobile body 10 will be described. Figure 22This is a structural diagram of a control device for a moving body. The control device 28 controls the moving body 10. The control device 28 sets a track TR1 up to a target position and posture AR2 based on the detection result of the position or posture of the pallet P detected by the sensor 26 of the moving body 10. The method for setting the track TR1 will be described later. The control device 28 moves the moving body 10 along the track TR1 to the target position and posture AR2 to make the moving body 10 pick up the pallet P. The control device 28 moves the moving body 10 that has picked up the pallet P along the conveying track TR2. The control device 28 is a computer, as Figure 22 shown, includes a control unit 60, a storage unit 62, and a communication unit 64. The storage unit 62 is a memory that stores various information such as the operation content or programs of the control unit 60. For example, it includes at least one of a RAM, a main storage device such as a ROM, an external storage device such as an HDD and an SSD. The communication unit 64 is a communication module that communicates with an external device. For example, it is an antenna or the like.

[0175] The control unit 60 includes a route information acquisition unit 70A, a movement control unit 72A, a target object surrounding information acquisition unit 74A, a track setting unit 76A, and a conveyance availability determination result acquisition unit 78A. The control unit 60 realizes the route information acquisition unit 70A, the movement control unit 72A, the target object surrounding information acquisition unit 74A, the track setting unit 76A, and the conveyance availability determination result acquisition unit 78A by reading a program (software) from the storage unit 62, and executes these processes. In addition, the control unit 60 can execute these processes through one CPU, or can include multiple CPUs and execute the processes in parallel through these multiple CPUs. And, at least a part of the route information acquisition unit 70A, the movement control unit 72A, the target object surrounding information acquisition unit 74A, the track setting unit 76A, and the conveyance availability determination result acquisition unit 78A can be realized by a hardware circuit.

[0176] (Route information acquisition unit, movement control unit)

[0177] The route information acquisition unit 70A acquires information on the route R from the arithmetic device 14 via the communication unit 64. The movement control unit 72A controls a driving unit or a movement mechanism such as a steering wheel of the moving body 10 to control the movement of the moving body 10. The movement control unit 72A moves the moving body 10 according to the route R acquired by the route information acquisition unit 70A. That is, the movement control unit 72A moves the moving body 10 in such a way that it moves from the current position of the moving body 10 towards the setting area AR0 through the route R. Moreover, the movement control unit 72A moves the moving body 10 in such a way that it passes through the route R by successively grasping the position information of the moving body 10. The method for acquiring the position information of the moving body 10 is arbitrary. However, for example, in the present embodiment, as Figure 18AAs shown in the figure, a detection body S is provided in the device W, and the movement control unit 72A acquires the position information of the moving body 10 based on the detection of the detection body S. Specifically, the moving body 10 irradiates a laser beam toward the detection body S, and detects its own position in the device W by receiving the reflected light of the laser beam reflected by the detection body S. As another method, its own position can be estimated by SLAM (Simultaneous Localization and Mapping). That is, a method of using LiDAR (Light Detection and Ranging) to create an environmental map around the moving body 10, and improving the accuracy of the self-position estimation of the moving body 10 by comparing the self-position estimation result estimated from measurement values such as the rotation amount of the laser sensor and the wheels 20A of the moving body 10 with the environmental map creation result, namely LiDAR SLAM, can estimate the position of the moving body 10 itself. And, instead of LiDAR, a camera or an image sensor can be used to create an environmental map around the moving body 10, and a method of improving the accuracy of self-position estimation by comparing the self-position estimation result estimated from measurement values such as the camera and the rotation amount of the wheels 20A of the moving body 10 with the environmental map creation result, namely Visual SLAM, can estimate the position of the moving body 10 itself. And, the magnetic coil buried in the area A in the device W can be detected by the magnetic sensor mounted on the moving body 10, thereby estimating the position of the moving body 10 itself. The position of the moving body 10 here is the two-dimensional coordinates in the directions X and Y in the area A of the device W. Hereinafter, unless otherwise specified, the position refers to the two-dimensional coordinates in the area A.

[0178] (Target object surrounding information acquisition unit)

[0179] While the moving body 10 is traveling on the route R, the target object surrounding information acquisition unit 74A causes the sensor 26 of the moving body 10 to detect an object. That is, while the moving body 10 is traveling on the route R, the target object surrounding information acquisition unit 74A causes the sensor 26 to sequentially execute the object detection process. When the sensor 26 is a laser sensor, when the moving body 10 reaches a distance at which the position information and posture information of the tray P or the adjacent object PA can be detected by the sensor 26, the sensor 26 receives the reflected light from the tray P or the adjacent object PA and detects the position information and posture information of the tray P or the adjacent object PA. When the sensor 26 is a camera, the target object surrounding information acquisition unit 74A acquires the image data of the tray P or the adjacent object PA through the camera and analyzes the acquired image data, thereby detecting the position information and posture information (position information and posture information) of the tray P or the adjacent object PA. In the present embodiment, the position of the moving body 10 when the sensor 26 detects the position information and posture information of the tray P or the adjacent object PA becomes the start position AR1. That is, while traveling on the route R, the target object surrounding information acquisition unit 74A acquires the detection result of the position information and posture information of the tray P or the adjacent object PA from the sensor 26. Hereinafter, the position information and posture information of the tray P and the position information and posture information of the adjacent object PA are appropriately described as the target object surrounding information.

[0180] Figure 23 This is a diagram for explaining the arrangement of trays within the installation area. As Figure 23As shown, the tray P has an opening Pb on one side, i.e., the front surface Pa, into which the fork 24 is inserted. The tray P is disposed in the setting area AR0 with the front surface Pa facing the start position AR1. The tray P is preferably set to fall within the setting area AR0, in other words, not to protrude from the setting area AR0. And when the tray P is configured not to protrude from the setting area AR0, the size of the setting area AR0 is preferably set such that the inclination angle θ of the setting area AR0 with respect to the tray P does not exceed 45 degrees. That is, the inclination angle θ is set to fall within the range of 0 degrees or more and 45 degrees or less. The inclination angle θ refers to the deviation of the angle in the horizontal direction along the setting area AR0 with respect to the setting area AR0 of the tray P. Let the straight line connecting the center point CP0 of the tray P and the midpoint CP1 in the horizontal direction of the front surface Pa of the tray P and orthogonal to the Z direction (vertical direction) be the straight line L1. Moreover, let the straight line connecting the center point CA0 of the setting area AR0 and the midpoint CA1 of the side opposite to the start position AR1 of the setting area AR0 and orthogonal to the Z direction (vertical direction) be the straight line LA. In this case, it can be said that the angle formed by the straight line L1 and the straight line LA is the inclination angle θ. Here, let the length of the side on the front surface Pa of the tray P be the length DX, and the length of the side on the side surface be the length DY. In this case, in order for the inclination angle θ not to exceed 45 degrees when the tray P is configured not to protrude from the setting area AR0, it is only necessary to set at least one of the sides of the setting area AR0 to be shorter than {(DX / √2)+(DY / √2)}.

[0181] Figure 24 It is a schematic diagram for explaining the detection state of the position information of the tray or adjacent objects. As Figure 24 shown, the target object peripheral information acquisition unit 74A acquires the detection results of the position information, posture information of the target object, i.e., the tray P, and the position information, posture information of the adjacent object PA from the sensor 26 of the moving body 10 at the start position AR1. The position information and posture information of the tray P are information indicating the position and posture of the tray P, and the position information and posture information of the adjacent object PA are information indicating the position and posture of the adjacent object PA. For example, in the case of a structure where the sensor 26 irradiates a laser beam, while the moving body 10 travels on the route R, the target object peripheral information acquisition unit 74A irradiates the laser beam LT while scanning the sensor 26 laterally (horizontal direction). When the moving body 10 reaches the start position AR1, the tray P and the adjacent object PA located on the first direction side of the sensor 26 are irradiated with the laser beam LT and reflect the laser beam LT. The sensor 26 receives the reflected light from the tray P and the adjacent object PA. The target object peripheral information acquisition unit 74A detects the position and posture of the tray P based on the reflected light from the tray P received by the sensor 26, and detects the position and posture of the adjacent object PA based on the reflected light from the adjacent object PA received by the sensor 26. That is, as Figure 24As shown, when the moving body 10 reaches the start position AR1 on the route R, the target object surrounding information acquisition unit 74A acquires the detection results of the positions and postures of the tray P and the adjacent object PA from the sensor 26. In addition, in Figure 24 the example of Figure 24 , the case where there is one adjacent object PA is taken as an example, but the case where a plurality of adjacent objects PA are provided around the tray P can also be considered. In this case, the target object surrounding information acquisition unit 74A causes the sensor 26 to detect the position information and posture information of the plurality of adjacent objects PA and acquires the detection results thereof.

[0182] In addition, as described above, the position information and posture information are not limited to being detected by the laser beam LT (LiDAR), and can be detected by any method. For example, they can be detected by a camera. When the sensor 26 of the moving body 10 is a camera, while the moving body 10 is traveling on the route R, the target object surrounding information acquisition unit 74A acquires the image data of the tray P or the adjacent object PA while causing the sensor 26 to scan laterally (in the horizontal direction). When the moving body 10 reaches the start position AR1, the tray P and the adjacent object PA located on the first direction side of the sensor 26 are acquired by the sensor 26 for image data. The target object surrounding information acquisition unit 74A analyzes the acquired image data to acquire the position information and posture information. That is, it can be said that the target object surrounding information acquisition unit 74A acquires the detection results of the positions and postures of the tray P and the adjacent object PA based on the image data acquired by the sensor 26.

[0183] The position of the tray P here is the position of the tray P relative to the moving body 10, and can also be said to be the direction and distance (i.e., coordinates) of the tray P relative to the moving body 10. The position of the tray P acquired by the target object surrounding information acquisition unit 74A can also be said to be the position of the tray P relative to the start position AR1. The same applies to the position of the adjacent object PA.

[0184] Moreover, the posture of the tray P refers to the direction in which the tray P faces relative to the moving body 10. More specifically, it refers to the direction in which the front surface Pa of the tray P faces relative to the start position AR1. If a straight line connecting the midpoint CP1 of the tray P and the reference point CF of the moving body 10 and orthogonal to the direction Z (vertical direction) is defined as the straight line L0, then the slope of the straight line L1 relative to the straight line L0 can be said to be the posture of the tray P. That is, the posture of the tray P can also be said to be the angle θP formed by the straight line L0 and the straight line L1, and the target object surrounding information acquisition unit 74A can calculate the angle θP. In addition, the reference point CF can be said to be the reference point of the start position AR1 and is set in advance. The reference point CF can be set at any position relative to the start position AR1. For example, a position overlapping with the midpoint in the horizontal direction of the moving body 10 that reaches the start position AR1 can be set as the reference point CF. The same applies to the position of the adjacent object PA. In addition, the target object surrounding information acquisition unit 74A can calculate the position and posture of the tray P or the adjacent object PA based on the reflected light from the tray P or the adjacent object PA, gradually approaching the direction of the sensor 26, or the time from when the laser beam LT is irradiated until the reflected light is received, etc.

[0185] (Track setting unit)

[0186] Figure 25 is a schematic diagram for explaining the setting of the track. As Figure 25 shown, the track setting unit 76A (refer to Figure 22 ) sets the track TR1 from the start position AR1 (the moving body 10 located at the start position AR1) to the target position and posture AR2. The track setting unit 76A sets the target position and posture AR2 based on the position information of the tray P acquired by the target object surrounding information acquisition unit 74A, that is, based on the position and posture of the tray P. That is, based on the position and posture of the tray P, the position and posture at which the tray P can be picked up (the fork 24 can be inserted into the opening Pb of the tray P by going straight) are calculated and set as the target position and posture AR2. As an example, a position that is parallel to the axial direction of the opening Pb of the tray P and has been translated 1000 mm along the entrance of the opening Pb can be set as the target position and posture AR2.

[0187] In the present embodiment, the track setting unit 76A calculates the track TR1 by model predictive control (MPC: Model Predictive Control). Hereinafter, an example of the calculation method of the track TR1 will be described.

[0188] The control input u(k) of the moving body 10 is represented by the following formula (9).

[0189] [Equation 9]

[0190] u(k) = [v(k), φ(k)] T…(9)

[0191] Here, v(k) is the speed command value of the moving body 10, φ(k) is the yaw angular velocity command value of the moving body 10, and k represents the index of discrete time. The control input U(k) of the moving body 10 at each discrete time is represented by the following equation (10). In addition, N is the prediction range (Predictive horizon).

[0192] [Equation 10]

[0193] U(k) = [u(k), u(k + 1), …, u(k + N - 1)] T …(10)

[0194] The orbit setting unit 76A solves the optimization problem shown in the following equation (11), and calculates the optimal solution of the control input, that is, u(k), u(k + 1), …, u(k + N - 1), to calculate the orbit TR1. As a solution to this optimization problem, known techniques such as the sequential quadratic programming method or the interior point method can be used.

[0195] [Equation 11]

[0196] J(U(k)) → min…(11)

[0197] In addition, when calculating the orbit TR1 in this way, for example, the following constraint conditions shown in equations (12) to (16) are given.

[0198] [Equation 12]

[0199] x(k) = v(k)cosθ(k)…(12)

[0200] [Equation 13]

[0201] y(k) = v(k)sinθ(k)…(13)

[0202] [Equation 14]

[0203]

[0204] [Equation 15]

[0205] v(k) ≤ v MAX …(15)

[0206] [Equation 16]

[0207] -φ MAX ≤ φ(k) ≤ φ MAx …(16)

[0208] Here, x is the coordinate of the moving body 10 in the X direction, y is the coordinate of the moving body 10 in the Y direction, θ is the inclination angle of the moving body 10 with respect to the reference axis, and L is the wheelbase representing the distance between the front wheels and the rear wheels of the vehicle V. v MAX , φ MAX are the upper limit values of the preset speed and yaw angular velocity.

[0209] In addition, there are sometimes multiple trajectories that can reach the target position and posture AR2 from the start position AR1. In this case, the trajectory setting unit 76A can calculate multiple trajectories that can reach the target position and posture AR2 from the start position AR1, and set the trajectory closest to the straight line L0 among these multiple trajectories as the trajectory TR1. The straight line L0 is the trajectory when it is assumed that the tray P is not tilted (the angle θP is 0), and is a linear trajectory connecting the start position AR1 to the target position and posture AR2. Therefore, by setting the trajectory closest to the straight line L0 as the trajectory TR1, it is possible to reduce the turning and quickly reach the target position and posture AR2.

[0210] Furthermore, the trajectory setting unit 76A also sets the path to the conveyance position, that is, the conveyance trajectory TR2. The conveyance trajectory TR2 is the path along which the moving body 10 carrying the tray P moves. In the present embodiment, the conveyance position is the start position AR1, and the conveyance trajectory TR2 is the path from the target position and posture AR2 to the start position AR1 as the conveyance position. That is, the conveyance trajectory TR2 is a trajectory that overlaps with the trajectory TR1 and has the opposite direction. However, the conveyance trajectory TR2 may not be a trajectory that overlaps with the trajectory TR1, and the conveyance position is not limited to the start position AR1. That is, the conveyance trajectory TR2 may be a trajectory to a position other than the start position AR1 (for example, the conveyance destination of the tray P). The generation method of the conveyance trajectory TR2 is the same as that of the trajectory TR1.

[0211] (Conveyability determination result acquisition unit)

[0212] When, based on the detection result of the target object surrounding information, the moving body 10 conveys the tray P to the conveyance position, Figure 22The conveyance feasibility determination result acquisition unit 78A shown acquires the result of determining whether or not the tray P interferes with the adjacent object PA. In the present embodiment, the conveyance feasibility determination result acquisition unit 78A of the control device 28 includes an interference area calculation unit 80A and an interference determination unit 82A, and determines whether or not the tray P interferes with the adjacent object PA. However, the main body that determines whether or not interference occurs is not limited to the control device 28, and the arithmetic device 14 may determine whether or not interference occurs. When the arithmetic device 14 determines whether or not interference occurs, it can be said that the arithmetic device 14 includes a conveyance feasibility determination result acquisition unit 78A including an interference area calculation unit 80A and an interference determination unit 82A, and executes the processing described later. In this case, the conveyance feasibility determination result acquisition unit 78A provided in the control device 28 acquires the determination result of whether or not interference occurs determined by the arithmetic device 14 from the arithmetic device 14 via the communication unit 64.

[0213] (Interference area calculation unit)

[0214] The interference area calculation unit 80A calculates interference areas IF1 and IF2. It can also be said that the interference area calculation unit 80A calculates the positions occupied by the interference areas IF1 and IF2 in the area A. The interference areas IF1 and IF2 are respectively the areas through which the tray P held by the moving body 10 and the moving body 10 pass when the moving body 10 holding the tray P moves along the track TR1 and the conveyance track TR2. More specifically, the interference areas IF1 and IF2 can be said to be the areas obtained by projecting in the Z direction the areas (tracks) through which the tray P held by the moving body 10 and the moving body 10 pass when the moving body 10 moves along the track TR1 and the conveyance track TR2.

[0215] Figure 26A It is a schematic diagram showing an example of the interference area when the width of the moving body is smaller than the width of the tray. When the width ML of the moving body 10 is smaller than the width DX of the tray P, the interference area IF1 is determined by the size of the tray P and the track TR1. The interference area calculation unit 80A calculates the area obtained by expanding the track TR1 by half of the width DX of the tray P toward both lateral sides as the interference area IF1. Thus, when the width ML of the moving body 10 is smaller than the width DX of the tray P, the width DX of the tray P is used to calculate the interference area IF1. Next, the calculation method of the interference area IF2 when the width ML of the moving body is smaller than the width DX of the tray P will be described. In this case, the interference area IF2 is determined by the size of the tray P and the conveyance track TR2. The interference area calculation unit 80A calculates the area obtained by expanding the conveyance track TR2 by half of the width DX of the tray P toward both lateral sides as the interference area IF2.

[0216] And, Figure 26BThis is a schematic diagram showing an example of an interference area when the width of the moving body is greater than the width of the tray. When the width ML of the moving body 10 is greater than the width DX of the tray P, the interference area IF1 is determined by the size of the moving body 10 and the track TR1. The interference area calculation unit 80A calculates the area obtained by expanding the track TR1 by half of the lateral length ML of the moving body 10 to both lateral sides as the interference area IF1. Thus, when the width ML of the moving body 10 is greater than the width DX of the tray P, the width ML of the moving body 10 is used to calculate the interference area IF1. Next, the calculation method of the interference area IF2 when the width ML of the moving body is greater than the width DX of the tray P will be described. In this case, the interference area IF2 is determined by the size of the moving body and the conveying track TR2. The interference area calculation unit 80A calculates the area obtained by expanding the conveying track TR2 by half of the width ML of the moving body to both lateral sides as the interference area IF2.

[0217] The lateral length DX of the tray P and the lateral length ML of the moving body 10 can use preset values, or can be calculated by the interference area calculation unit 80A according to the position information of the tray P. Also, since the interference areas IF1 and IF2 sometimes depend on the information of the vehicle specifications of the moving body 10, the interference areas IF1 and IF2 can be calculated according to the information of the vehicle specifications of the moving body 10.

[0218] Also, the interference area calculation unit 80A can set the area that overlaps with the installation area AR0A of the adjacent object PA in the area through which the moving body 10 or the tray P passes when the moving body 10 moves along the track TR1 or the conveying track TR2 ( Figure 26A , 26B the hatched part) as the interference areas IF1 and IF2. Also, sometimes due to the method of bringing the moving body 10 closer to the tray P according to the position information and posture information of the tray P, the moving body 10 swings left and right with respect to the track TR1. In view of this, the interference area IF1 can be calculated using a value obtained by further adding the swing width of the moving body 10 to the width of the interference area IF1. Additionally, the value of the swing width can be a preset value.

[0219] Thus, in the present embodiment, the interference areas IF1 and IF2 are calculated by the interference area calculation unit 80A of the control device 28 provided in the moving body 10. However, the main body for calculating the interference areas IF1 and IF2 is not limited to the control device 28 provided in the moving body 10. For example, the arithmetic device 14 can receive the surrounding information of the target object from the control device 28 and perform the calculation of the interference areas IF1 and IF2.

[0220] (Interference determination unit)

[0221] When the interference determination unit 82A moves the moving body 10 along the track TR1, it determines whether the moving body 10 interferes with the adjacent object PA. When the moving body 10 holding the tray P is moved along the conveying track TR2, it determines whether the moving body 10 and the tray P interfere with the adjacent object. Specifically, as a first-stage process, the interference determination unit 82A determines whether the adjacent object PA is disposed in the interference region IF1. Then, as a second-stage process, the interference determination unit 82A determines whether the adjacent object PA is disposed in the interference region IF2. In addition, when the track TR1 coincides with the conveying track TR2, the interference regions IF1 and IF2 coincide, so the interference determination unit 82A omits the second-stage process.

[0222] The first-stage process of the interference determination unit 82A will be further described in detail. The interference determination unit 82A acquires the position information and posture information of the adjacent object PA from the target object surrounding information acquisition unit 74A to determine the position and posture of the adjacent object PA, and determines whether the adjacent object PA is disposed in the interference region IF1. In the first-stage process, when it is determined that the adjacent object PA is disposed in the interference region IF1, the interference determination unit 82A determines that the moving body 10 interferes with the adjacent object PA on the track TR1 and determines that conveyance is impossible. Also, in the first-stage process, when it is determined that the adjacent object PA is not disposed in the interference region IF1, the interference determination unit 82A proceeds to the second-stage process.

[0223] The second-stage process of the interference determination unit 82A will be further described in detail. In the second-stage process, the interference determination unit 82A determines whether the adjacent object PA is disposed in the interference region IF2. When it is determined that the adjacent object PA is disposed in the interference region IF2, when the moving body 10 conveys the tray P on the conveying track TR2, it is assumed that the moving body 10 or the tray P interferes with the adjacent object PA, and the interference determination unit 82A determines that conveyance is impossible. When it is determined that the adjacent object PA is not disposed in the interference region IF2, the interference determination unit 82A determines that conveyance is possible. However, when the track TR1 coincides with the conveying track TR2, the interference regions IF1 and IF2 coincide, so the interference determination unit 82A omits the second-stage process and sets the determination result of the first-stage process as the interference determination result of the interference determination unit 82A.

[0224] (Moving method of the moving body)

[0225] If the moving body 10 reaches the start position AR1 and acquires the position information of the tray P or the adjacent object PA, then Figure 22The shown movement control unit 72A stops traveling along route R. Then, when the generation of the track TR1 and the conveyance track TR2 by the track setting unit 76A and the determination of interference by the interference determination unit 82A are completed at the start position AR1, and when it is determined in the interference determination unit 82A that conveyance is possible, the movement control unit 72A moves the moving body 10 from the start position AR1 to the target position / posture AR2 in such a manner as to pass through the track TR1. Additionally, the moving body 10 may not stop at the start position AR1. In this case, the moving body 10 also continuously travels along route R from the start position AR1, generates the track TR1 and the conveyance track TR2, and performs the determination of interference. Then, if it is determined that no interference occurs, the moving body 10 switches from route R to traveling on the track TR1. Thus, by smoothly connecting route R and track TR1 so that the moving body 10 does not stop at the start position AR1, the working time can be suppressed.

[0226] In the interference determination unit 82A, when it is determined that conveyance is possible, the moving body 10 starts moving along the track TR1. When the moving body 10 moves along the track TR1 and moves to the target position / posture AR2, the movement control unit 72A makes the moving body 10 go straight from the target position / posture AR2 and inserts the fork 24 into the opening Pb of the tray P to pick up the tray P. The movement control unit 72A moves the moving body 10 that has picked up the tray P along the conveyance track TR2. More specifically, when it is determined by the interference determination unit 82A that the tray P does not interfere with the adjacent object PA, the movement control unit 72A moves the moving body 10 along the track TR1 and the conveyance track TR2 to convey the tray P by the moving body 10. On the other hand, when it is determined by the interference determination unit 82A that the tray P interferes with the adjacent object PA, the movement control unit 72A sometimes does not perform traveling along the track TR1 or the conveyance track TR2 and does not convey the tray P. Hereinafter, a specific description will be given.

[0227] (Retention feasibility determination)

[0228] When it is determined that the tray P or the moving body 10 interferes with the adjacent object PA, that is, when the tray P cannot be approached on the track TR1 or the tray P cannot be conveyed on the conveying track TR2, the interference determination unit 82A determines whether the moving body 10 can hold the tray P. Holding the tray P means, for example, inserting the fork 24 of the moving body 10 into the opening Pb of the tray P. When the moving body 10 moves along the track TR1 and reaches the tray P (up to the target position and posture AR2) without interfering with the adjacent object PA, the interference determination unit 82A determines that the tray P can be held. On the other hand, when the moving body 10 moves along the track TR1 and cannot reach the tray P (up to the target position and posture AR2) due to interference with the adjacent object PA, the interference determination unit 82A determines that the tray P cannot be held. The interference determination unit 82A determines whether the tray P can be held based on the position information of the track TR1, the adjacent object PA, and the dimension information of the moving body 10.

[0229] When it is determined that the tray P can be held, the interference determination unit 82A determines whether the tray P held by the moving body 10 can be moved to a position where it does not interfere with the adjacent object PA based on the vehicle type information of the moving body 10. In the present embodiment, when the moving body 10 is a straddle carrier and a vehicle type capable of rotating in place, the interference determination unit 82A determines that the tray P can be moved. The straddle carrier is a vehicle type capable of moving the fork 24 laterally (in the horizontal direction). The vehicle type capable of rotating in place means that the moving body 10 can rotate in place without moving its position (coordinates).

[0230] When the interference determination unit 82A determines that the tray P can be held and the tray P can be moved to a position where it does not interfere with the adjacent object PA, the movement control unit 72A causes the moving body 10 to move along the track TR1 while holding the tray P, and moves the tray P to a position where it does not interfere with the adjacent object PA. For example, in the case of a rail-guided stacker, after holding the tray P, the movement control unit 72A moves the fork 24 to the side opposite to the adjacent object PA without moving the position (coordinate). In this case, while keeping the moving body 10 staying at the same position, the tray P held by the fork 24 is moved to a position where it does not interfere with the adjacent object PA in the horizontal direction. Therefore, even when passing through the conveying track TR2 while the tray P is still held by the fork 24, the tray P will not interfere with the adjacent object PA. And, for example, in the case of a vehicle model that can rotate in place, after holding the tray P, the movement control unit 72A rotates the moving body 10 in a manner that separates the tray P from the adjacent object PA without moving the position (coordinate). Then, the movement control unit 72A moves the moving body 10. For example, when rotating in place, the orientation of the moving body 10 changes, so the conveying track TR2 can be updated by the track setting unit 76A. In addition, when the interference determination unit 82A determines that the tray P cannot be held, or determines that the tray P cannot be moved to a position where it does not interfere with the adjacent object PA, the movement control unit 72A does not travel along the track TR1, and for example, notifies the arithmetic unit 14 of an alarm to the effect that the tray P cannot be conveyed via the communication unit 64.

[0231] (Movement control process)

[0232] The process of the movement control of the moving body 10 described above will be described according to the flowchart. Figure 27A It is a flowchart for explaining the movement control process of the moving body according to the fifth embodiment.

[0233] The control device 28 of the mobile body 10 acquires the information of the route R set by the arithmetic device 14 through the route information acquisition unit 70, and causes the mobile body 10 to move to the start position AR1 along the route R through the movement control unit 72A. When the mobile body 10 reaches the start position AR1, the control device 28 acquires the position information of the tray P and the position information of the adjacent object PA through the target object surrounding information acquisition unit 74A (step S10A). Then, the control unit 60 generates the track TR1 and the conveying track TR2 according to the position information of the tray P through the track setting unit 76A (step S11A). Then, the control device 28 acquires the determination result of whether it is possible to approach the tray P on the track TR1 and whether it is possible to convey the tray P on the conveying track TR2 through the conveyance availability determination result acquisition unit 78A (step S12A). Specifically, the conveyance availability determination result acquisition unit 78A acquires the determination result of calculating the interference regions IF1 and IF2 by the interference region calculation unit 80A and determining whether the adjacent object PA is disposed in the interference regions IF1 and IF2 by the interference determination unit 82A. When the adjacent object PA is disposed in the interference regions IF1 and IF2, the interference determination unit 82A determines that it is impossible to convey the tray P, and when the adjacent object PA is not disposed in the interference regions IF1 and IF2, the interference determination unit 82A determines that it is possible to convey the tray P.

[0234] When it is impossible to convey the tray P (step S12A; "No"), that is, when it is impossible to convey the tray P without interfering with the adjacent object PA, the control device 28 determines whether it is possible to hold the tray P according to the position information of the track TR1 and the adjacent object PA (step S14A).

[0235] When it is possible to hold the tray P (step S14A; "Yes"), the control device 28 determines whether it is possible to move the tray P to a position where it does not interfere with the adjacent object PA according to the vehicle type information. Specifically, the control device 28 determines whether the mobile body 10 can move the fork 24 in the horizontal direction, that is, whether it is a rail-less stacker (step S18A). When the mobile body 10 can move the fork 24 in the horizontal direction (step S18A; "Yes"), the control device 28 causes the mobile body 10 to move along the track TR1 through the movement control unit 72A so that the mobile body 10 holds the tray P (step S20A). If the mobile body 10 holds the tray P, the movement control unit 72A moves the fork 24 in the horizontal direction to move the tray P outside the range of the interference region, that is, to a position where it does not interfere with the adjacent object PA (step S22A). Then, the movement control unit 72A causes the mobile body 10 to move along the conveying track TR2.

[0236] When the moving body 10 cannot move the fork 24 in the horizontal direction (step S18A; "No"), the control device 28 determines whether the moving body 10 can rotate (step S24A). When the moving body 10 can rotate (step S24A; "Yes"), the control device 28 causes the moving body 10 to move along the track TR1 through the movement control unit 72A to make the moving body 10 hold the tray P (step S26A). If the moving body 10 holds the tray P, the control device 28 rotates the moving body 10 to move the tray P outside the range of the interference area (step S28A). When the moving body 10 cannot rotate (step S24A; "No"), that is, when the tray P cannot be moved to a position where it does not interfere with the adjacent object PA, the control device 28 notifies an alarm to the arithmetic device 14 via the communication unit 64 (step S30A). The alarm is information indicating that the tray P can be held but cannot be transported due to interference with the adjacent object PA. In addition, the alarm can be output from the output unit provided in the moving body 10.

[0237] When the tray P cannot be held (step S14A; "No"), the control device 28 does not cause the moving body 10 to travel along the track TR1 and notifies an alarm to the arithmetic device 14 (step S16A). The alarm is information indicating that the tray P cannot be held and the tray P cannot be picked up.

[0238] When the tray P can be transported (step S12A; "Yes"), that is, when the tray P can be transported without interfering with the adjacent object PA, the control device 28 causes the moving body 10 to travel along the track TR1 to hold the tray P (step S32A). If the moving body 10 holds the tray P, control is performed to move the moving body 10 to the transport position along the transport track TR2 (step S34A).

[0239] (Effect of this embodiment)

[0240] The moving body 10 determines whether the tray P can be transported without interfering with the adjacent object PA based on the surrounding information of the target object. Therefore, according to this embodiment, interference between the tray P and the adjacent object PA can be suppressed. And even when interference occurs between the tray P and the adjacent object PA, when the tray P can be held and the moving body 10 can move the tray P to a non-interfering position in place, after the moving body 10 holds the tray P, the tray P is moved outside the range of the interference area. Therefore, it is determined whether the tray P interferes with the adjacent object PA, and according to the type of the moving body 10, it is determined whether to execute the transport work, so that interference between the tray P and the adjacent object PA can be more appropriately suppressed.

[0241] (Example where the start position is set)

[0242] In the above description, the position on the route R where the sensor 26 can detect the position information of the tray P is the start position AR1, and the start position AR1 is not a preset position. However, the start position AR1 can be a preset position. In this case, the start position AR1 is preset for each setting area AR0 as the position where the sensor 26 can detect the position information of the tray P provided in the setting area AR0. In this case, the route R can be preset as the path from the start position to the start position AR1. When the moving body 10 reaches the start position AR1 through the route R, at the start position AR1, the sensor 26 starts to detect the position information of the tray P to obtain the position information of the tray P. In addition, the example of presetting the start position AR1 can also be applied to another embodiment described later.

[0243] (Another example of a sensor)

[0244] Moreover, in the present embodiment, the control device 28 of the moving body 10 obtains the detection result of the position information of the tray P from the sensor 26 provided in the moving body 10. However, the position information of the tray P is not limited to being detected by the sensor 26 provided in the moving body 10, and can be detected by a sensor provided in a device other than the moving body 10. Figure 27B is a schematic diagram showing another example of a sensor. In Figure 27B the example, a sensor 26W is provided in the device W. The sensor 26W can detect the position information of the tray P in the same manner as the sensor 26 described above. That is, for example, the sensor 26W can irradiate a laser beam in the device W and receive the reflected light of the laser beam from the tray P to detect the position information of the tray P, or can detect the position information of the tray P by other means such as a camera. The control device 28 of the moving body 10 obtains the detection result of the position information of the tray P from the sensor 26W through a communication mechanism such as wireless communication, for example. In addition, the position where the sensor 26W is provided is arbitrary. For example, it can be fixedly provided in the device W. In this case, for example, it can be provided on the ceiling of the device W to detect the position and orientation of the tray P from above, or can be provided on the wall of the device W to detect the position and orientation of the tray P from the side, or can be provided on both the ceiling and the wall. Moreover, the sensor 26W can be provided on a moving body other than the moving body 10. As a moving body other than the moving body 10, for example, it can be a vehicle provided with the sensor 26W and traveling in the device W or a flying body (such as a drone) provided with the sensor 26W and flying in the device W. In addition, the example of detecting the position information of the tray P by a sensor 26W provided in a device other than the moving body 10 can also be applied to another embodiment described later.

[0245] (Another example of a system)

[0246] Also, in the present embodiment, the management system 12 determines the work content indicating the information of the pallet P, and the arithmetic device 14 determines the mobile body 10 to be the object or acquires the route R. However, the processing contents of the management system 12 and the arithmetic device 14 are not limited to this. For example, the management system 12 may be responsible for at least a part of the processing in the arithmetic device 14, and the arithmetic device 14 may be responsible for at least a part of the processing in the management system 12. Also, the management system 12 and the arithmetic device 14 may be one device (computer).

[0247] (Sixth Embodiment)

[0248] Next, the sixth embodiment will be described. The sixth embodiment is different from the fifth embodiment in that the conveyance order of the pallet P and the adjacent object PA is determined when the pallet P interferes with the adjacent object PA. In the sixth embodiment, the description of the parts having the same structure as those in the fifth embodiment is omitted.

[0249] (Arithmetic Device)

[0250] Figure 28 is a structural diagram of the arithmetic device according to the sixth embodiment. As Figure 28 shown, the control unit 40 of the arithmetic device 14a according to the sixth embodiment includes a conveyance order setting unit 59A. The conveyance order setting unit 59A sets the conveyance order of the pallet P and the adjacent object PA. That is, the conveyance order setting unit 59A determines in which order to convey the pallet P and the adjacent object PA. The conveyance order setting unit 59A determines the conveyance order based on the position information of the pallet P and the position information of the adjacent object PA. For example, when the pallet P and the adjacent object PA interfere with each other during conveyance on the conveyance track TR2, if the adjacent object PA is conveyed first, the pallet P can be conveyed on the conveyance track TR2. Therefore, for example, when the pallet P and the adjacent object PA interfere with each other during conveyance on the conveyance track TR2, the conveyance order setting unit 59A determines to convey the adjacent object PA first and then the pallet P. In addition, when there are a plurality of adjacent objects PA, the conveyance order setting unit 59A determines the conveyance order of the plurality of adjacent objects PA and the pallet P.

[0251] In addition, the conveyance order setting unit 59A may be included in the control device 28. That is, the control device 28 may set the conveyance order of the pallet P and the adjacent object PA based on the position information of the pallet P and the position information of the adjacent object PA.

[0252] As Figure 28As shown, the arithmetic unit 14a according to the sixth embodiment includes a conveyance execution main body determination unit 56A. The conveyance execution main body determination unit 56A selects a moving body that conveys the adjacent object PA. When the interference determination unit 82A determines that the tray P interferes with the adjacent object PA, the control device 28 of the moving body 10 transmits information on the gist of causing the adjacent object PA to move to the arithmetic unit 14a. That is, the control device 28 transmits information on the gist determined by the conveyance order setting unit 84 to be the first conveyance of the adjacent object PA to the arithmetic unit 14a. The conveyance execution main body determination unit 56A selects a moving body that conveys the adjacent object PA determined by the conveyance order setting unit 59A to be conveyed first.

[0253] The conveyance execution main body determination unit 56A selects a moving body that conveys the adjacent object PA from among a plurality of moving bodies belonging to the equipment W. That is, the conveyance execution main body determination unit 56A selects a moving body that conveys the adjacent object PA from the moving body 10 (first moving body) that will convey the tray P and the moving bodies other than the first moving body (second moving bodies). The conveyance execution main body determination unit 56A can select a moving body that conveys the adjacent object PA by any method. For example, it selects a moving body that conveys the adjacent object PA based on information on the vehicle specifications of each moving body or the position information of the adjacent object PA, etc. The conveyance execution main body determination unit 56A can, for example, select a moving body that can convey the adjacent object PA as soon as possible, or can select a moving body that is on standby.

[0254] In the conveyance execution main body determination unit 56A, the arithmetic unit 14a transmits command information on the gist of causing the adjacent object PA to move to the selected moving body. That is, when the moving body 10 (first moving body) is selected, the control device 28 of the moving body 10 (first moving body) acquires command information on the gist of causing the adjacent object PA to move earlier than the tray P from the arithmetic unit 14a. If this command information is acquired, the movement control unit 72A of the control unit 60 causes the adjacent object PA to move outside the interference area IF2. The movement control unit 72A can temporarily place the adjacent object PA outside the interference area IF2 but near the current position, or can convey it to the designated conveyance destination. The path for conveying the adjacent object PA can be set by the moving body 10 (first moving body), or can be set by the arithmetic unit 14a. When the conveyance of the adjacent object PA is completed, the moving body 10 (first moving body) transmits information on this gist to the arithmetic unit 14a. If information on the completion of the conveyance of the adjacent object PA is acquired, the arithmetic unit 14a transmits command information on the gist of conveying the tray P to the moving body 10 (first moving body). The moving body 10 (first moving body) moves along the track TR1 and the conveyance track TR2 to convey the tray P.

[0255] On the other hand, when a second moving body other than the moving body 10 (the first moving body) is selected, the arithmetic unit 14a sends a command with the gist of standby to the moving body 10 (the first moving body), and the moving body 10 (the first moving body) stands by at the original position. Further, the arithmetic unit 14a sends a command with the gist of moving the adjacent object PA to the second moving body. If a command with the gist of moving the adjacent object PA is acquired, the second moving body moves the adjacent object PA outside the interference area IF2. The second moving body may transport the adjacent object PA to a vicinity of the current position outside the interference area IF2 and temporarily place it, or may transport it to a designated transport destination. The path for transporting the adjacent object PA may be set by the second moving body or may be set by the arithmetic unit 14a. When the transport of the adjacent object PA is completed, the second moving body sends information with the gist thereof to the arithmetic unit 14a. If information with the gist of the completion of the transport of the adjacent object PA is acquired, the arithmetic unit 14a outputs a command with the gist of transporting the transport tray P to the moving body 10 (the first moving body). The moving body 10 (the first moving body) moves along the track TR1 and the transport track TR2 to transport the transport tray P.

[0256] (Moving control process)

[0257] Figure 29 It is a flowchart for explaining the execution process of the movement control system. Up to Figure 29 Step S12A of the execution process of the movement control system according to the sixth embodiment shown is the same as Figure 27A Step S12A of the fifth embodiment shown up to. In step S12A, when it is determined that transportation is impossible (step S12A; "No"), the control device 28 of the moving body 10 sends information indicating impossible transportation to the arithmetic unit 14a (step S40A). The arithmetic unit 14a determines the transportation order of the target object surrounding information, the tray P, and the adjacent object PA through the transportation order setting unit 59A (step S42A). Further, here, as described above, before the process of step S40A, it is determined that transportation is impossible, so the adjacent object PA that causes interference when the tray P is transported is transported first.

[0258] The arithmetic unit 14a that has determined the conveyance order selects the moving body that conveys the conveyance adjacent object PA through the conveyance execution main body determination unit 56A (step S44A). When there is a moving body that conveys the conveyance adjacent object PA (step S46A; "Yes") and the moving body that conveys the conveyance adjacent object PA is the first moving body (step S50A; "Yes"), the arithmetic unit 14a sends a conveyance command for the adjacent object PA to the first moving body (step S52A). The first moving body that has received the conveyance command for the adjacent object PA conveys the adjacent object PA outside the range of the interference area IF2 (step S53A). If the conveyance of the adjacent object PA is completed, the first moving body outputs information to this effect to the arithmetic unit 14a. If the information to this effect is acquired from the first moving body, the arithmetic unit 14a sends a conveyance command for the tray P to the first moving body. If the conveyance command is received, the first moving body holds the tray P and performs the conveyance work (step S54A).

[0259] When the moving body that conveys the conveyance adjacent object PA is not the first moving body (step S50A; "No"), the arithmetic unit 14a sends a conveyance command for the adjacent object PA to the second moving body, which is the moving body that conveys the conveyance adjacent object PA (step S58A). The second moving body that has received the conveyance command conveys the adjacent object PA outside the range of the interference area IF2 (step S60A). If the adjacent object PA is conveyed outside the range of the interference area IF2, the second moving body sends information to this effect (adjacent object exclusion completion notification) to the arithmetic unit 14a. The arithmetic unit 14a that has received the adjacent object exclusion completion notification sends a conveyance command for the tray P to the first moving body. The first moving body that has received the conveyance command for the tray P holds the tray P and performs the conveyance work (step S54A).

[0260] When there is no moving body in the device W that can move the adjacent object PA (step S46A; "No"), the arithmetic unit 14a outputs an alarm (step S48A). The arithmetic unit 14a, for example, as an alarm, displays an output that cannot be conveyed on the GUI (Graphical User Interface).

[0261] As described above, in the sixth embodiment, when the tray P interferes with the adjacent object PA, the adjacent object PA is conveyed first. Therefore, according to the sixth embodiment, by conveying the adjacent object PA first, even when the tray P is conveyed on the conveyance track TR2, interference between the tray P and the adjacent object PA is suppressed, and the tray P can be conveyed without interfering with the adjacent object PA.

[0262] (Another example)

[0263] In the above description, the moving body 10 detected the position information of the tray, i.e., the adjacent object PA, and determined the interference with the tray P provided in the setting area AR0. However, as described below, not only the tray, i.e., the adjacent object PA, but also the position information of an object (cargo) other than the tray can be detected to determine the interference with the tray P.

[0264] Figure 30 FIG. is a schematic diagram for explaining the processing when a cargo is arranged near a target object. In Figure 30 FIG., the object LG is located near the tray P. The object LG is, for example, a cargo and is located outside the range of the setting area where the tray P or the adjacent object PA is arranged. The moving body 10, at the start position AR1, detects the position information and posture information of the object LG in addition to the tray P or the adjacent object PA by the sensor 26. Then, the moving body 10 determines the interference between the tray P and the object LG in the same manner as determining the interference between the tray P and the adjacent object PA. In addition, the object LG can be an object located within the setting area.

[0265] When an object LG (cargo) is arranged near the tray P, the control device 28 according to this example also acquires the position and posture information of the cargo as the target object surrounding information. Then, when the conveyance permission determination result acquisition unit 78A provided in the control device 28 determines whether the tray P interferes with the adjacent object PA, it also determines whether the tray P interferes with the object LG. That is, the conveyance permission determination result acquisition unit 78A makes a determination based on further considering the position information and posture information of the cargo in addition to the position information, posture information of the target object, and the position information, posture information of the adjacent object included in the target object surrounding information. Thus, by also determining the interference between the object LG and the tray P, the interference between the tray P and other objects LG can be more appropriately suppressed.

[0266] When the conveyance permission determination result acquisition unit 78A includes an interference area calculation unit 80A and an interference determination unit 82A, as described above, after the interference area calculation unit 80A calculates the interference areas IF1 and IF2, in the interference determination unit 82A, in addition to the interference areas IF1 and IF2, the position information and posture information of the adjacent object PA, it also determines whether there is interference with the adjacent object PA and whether there is interference with the object LG based on the position information and posture information of the object LG.

[0267] (Structure and effects of control device, moving body, moving control system, control method, and storage medium)

[0268] The control device 28 of the mobile body 10 according to the present invention includes: a target object surrounding information acquisition unit 74A that acquires the detection result of the target object surrounding information including the position and posture of the pallet P (target object) which is the object to be conveyed and the position and posture of the adjacent object PA disposed near the pallet P (target object); a conveyance feasibility determination result acquisition unit 78A that acquires the determination result of whether the pallet P (target object) interferes with the adjacent object PA when the mobile body 10 conveys the pallet P (target object) to the conveyance position according to the detection result of the target object surrounding information; and a movement control unit 72A that causes the mobile body 10 to convey the pallet P (target object) when it is determined that the pallet P (target object) does not interfere with the adjacent object PA.

[0269] According to this structure, an adjacent object is disposed near the target object which is the object to be conveyed. When interference occurs between the target object and the adjacent object if the mobile body that moves automatically is used to convey the target object, the conveyance work is not performed, so that interference between the target object and the adjacent object can be suppressed.

[0270] The control device 28 of the mobile body 10 according to the present invention further includes an orbit setting unit 76A that sets the conveyance orbit through which the mobile body 10 passes when conveying the pallet P (target object) to the conveyance position according to the position and posture information of the pallet P (target object) which is the object to be conveyed. The conveyance feasibility determination result acquisition unit 78A acquires the determination result determined according to the information of the interference area which is the area through which the pallet P (target object) passes and the position and posture of the adjacent object PA when the mobile body 10 conveys the pallet P (target object) along the conveyance orbit calculated according to the conveyance orbit.

[0271] According to this structure, the interference area is calculated according to the conveyance orbit. When an adjacent object is disposed in the interference area, it is determined that conveyance is impossible, so that interference between the target object and the adjacent object can be suppressed.

[0272] When it is determined that the pallet P (target object) which is the object to be conveyed interferes with the adjacent object PA, the conveyance feasibility determination result acquisition unit 78A acquires the determination result of whether the pallet P (target object) can be held according to the target object surrounding information. When it is determined that the pallet P (target object) can be held, the movement control unit 72A causes the mobile body 10 to hold the pallet P (target object) and move the pallet P (target object) to a position where it does not interfere with the adjacent object PA.

[0273] According to this structure, it is determined whether the target object can be held according to the target object surrounding information. When it is determined that the target object can be held, the mobile body holds the target object and moves the target object to a position where it does not interfere with the adjacent object, so that interference between the target object and the adjacent object can be suppressed.

[0274] The fork 24 of the holding tray P (target object) of the moving body 10 can move in the horizontal direction. When it is determined that the tray P (target object) can be held, after the movement control unit 72A causes the moving body 10 to hold the tray P (target object), the fork 24 is moved in the horizontal direction, thereby moving the tray P (target object) to a position where it does not interfere with the adjacent object PA.

[0275] According to this structure, by causing the moving body to hold the target object and moving the fork in the horizontal direction, the target object is moved to a position where it does not interfere with the adjacent object, so interference between the target object and the adjacent object can be suppressed.

[0276] The moving body 10 can rotate. When it is determined that the tray P (target object) can be held, after the movement control unit 72A causes the moving body 10 to hold the tray P (target object), it rotates, thereby moving the tray P (target object) to a position where it does not interfere with the adjacent object PA.

[0277] According to this structure, by causing the moving body to hold the target object and rotate, the target object is moved to a position where it does not interfere with the adjacent object, so interference between the target object and the adjacent object can be suppressed.

[0278] The mobile control system according to the present invention includes a control device 28 and an arithmetic device 14. The arithmetic device 14 is provided with a conveyance order setting unit 59A. When it is determined that the tray P (target object) interferes with the adjacent object PA, the conveyance order setting unit 59A acquires the target object surrounding information from the control device 28 and sets the conveyance order of the tray P (target object) and the adjacent object according to the target object surrounding information.

[0279] According to this structure, when it is determined that the target object interferes with the adjacent object, the conveyance order of the target object and the adjacent object is set according to the target object surrounding information, so interference between the target object and the adjacent object can be suppressed.

[0280] When the conveyance order setting unit 59A sets that the adjacent object PA is to be conveyed first, the movement control unit 72A conveys the adjacent object PA first and then conveys the tray P (target object).

[0281] According to this structure, when the interference determination unit determines that interference has occurred, the conveyance order of the target object and the adjacent object is set. When it is set that the adjacent object is to be conveyed first, the adjacent object is conveyed first and then the target object, so interference between the target object and the adjacent object can be suppressed.

[0282] The arithmetic device 14a is provided with a conveyance execution main body determination unit 56A that determines the moving body for conveying the adjacent object PA when the conveyance order setting unit 59A sets that the adjacent object PA is to be conveyed first, and an adjacent object conveyance command unit 58A that issues an instruction to output the gist of conveying the adjacent object PA to the moving body determined by the conveyance execution main body determination unit 56A.

[0283] According to this structure, when the conveyance order setting unit sets to convey adjacent objects first, the moving body that conveys the adjacent objects is determined, and a command for the gist of conveying the adjacent objects is output to the determined moving body. Therefore, after conveying the adjacent objects first, the target object is conveyed, and thus interference between the target object and the adjacent objects can be suppressed.

[0284] The pallet P (target object) and the adjacent object PA are pallets, and the target object surrounding information acquisition unit 74A also acquires the detection result of the position and posture information of the goods located near the pallet P (target object). When the moving body 10 conveys the pallet P (target object) to the conveyance position according to the detection result of the target object surrounding information, the conveyance feasibility determination result acquisition unit 78A also acquires the determination result of whether the pallet P (target object) interferes with the goods.

[0285] According to this structure, the conveyance feasibility determination result acquisition unit also determines whether there is interference with the goods in consideration of the position information and posture information of the goods, and thus it is possible to prevent the target object from interfering not only with the adjacent objects but also with the goods.

[0286] The moving body 10 according to the present invention includes the control devices 28 and 28a of the above-described moving body 10.

[0287] According to this structure, interference between the target object and the adjacent objects can be suppressed.

[0288] The mobile control system according to the present invention includes the above-described moving body 10 and the arithmetic devices 14 and 14a that transmit information related to the movement of the moving body 10 to the moving body 10.

[0289] According to this structure, interference between the target object and the adjacent objects can be suppressed.

[0290] A control method for controlling the moving body 10 includes the following steps: acquiring the detection result of the target object surrounding information including the position and posture information of the pallet P (target object) and the position and posture information of the adjacent object PA arranged near the pallet P (target object); when the moving body 10 conveys the pallet P (target object) to the conveyance position according to the detection result of the target object surrounding information, acquiring the determination result of whether the pallet P (target object) interferes with the adjacent object PA; and when it is determined that the pallet P (target object) does not interfere with the adjacent object PA, causing the moving body 10 to convey the pallet P (target object).

[0291] According to this structure, interference between the target object and the adjacent objects can be suppressed.

[0292] A storage medium is a computer-readable storage medium storing a program for causing a computer to execute a control method for controlling a moving body 10. The program includes the following steps: obtaining a detection result of target object surrounding information including information on the position and posture of a tray P (target object) and information on the position and posture of an adjacent object PA disposed near the tray P (target object); when the moving body 10 transports the tray P (target object) to a transport position based on the detection result of the target object surrounding information, obtaining a determination result as to whether the tray P (target object) interferes with the adjacent object PA; and when it is determined that the tray P (target object) does not interfere with the adjacent object PA, causing the moving body 10 to transport the tray P (target object).

[0293] According to this configuration, interference between the target object and the adjacent object can be suppressed.

[0294] As described above, embodiments of the present invention have been described, but the embodiments are not limited to the content of the embodiments. Moreover, among the foregoing constituent elements, there are included elements that can be easily assumed by those skilled in the art, substantially equivalent elements, and so-called equivalent ranges. Further, the foregoing constituent elements can be combined as appropriate. Moreover, various omissions, substitutions, or changes can be made to the constituent elements without departing from the gist of the foregoing embodiments.

[0295] Symbol Description

[0296] 1 - Mobile control system, 10 - Moving body, 12 - Management system, 14 - Arithmetic device, 24 - Fork, 26 - Sensor, 72 - Mobile control unit, 74 - Target object information acquisition unit, 76 - Interference determination unit, 78 - Region setting unit, 80 - Track setting unit, A1 - Permitted region, A2 - Prohibited region, AR0 - Set region, AR1 - Start position, AR2 - Target position / posture (target position), P - Tray (target object), R - Route, TR - Track.

Claims

1. A control device for a moving body, which is provided in a moving body that automatically moves, and the control device includes: A target object information acquisition unit that acquires a detection result of the orientation of a target object; A region setting unit that sets a prohibited region where the trajectory of the moving body is prohibited from passing, based on the orientation of the target object; A trajectory setting unit that sets a trajectory from the moving body to a target position that is at a specified position and orientation relative to the target object so that the trajectory does not pass through the prohibited region; And A movement control unit that moves the moving body according to the trajectory.

2. The control device for a moving body according to claim 1, wherein The region setting unit divides the region where the moving body can move by a reference line connecting the moving body and the target object, and sets the region on the side toward the target object and the region on the opposite side in the divided regions as the prohibited regions.

3. The control device for a moving body according to claim 2, wherein The region setting unit acquires a preset maximum inclination trajectory as the trajectory of the moving body when the target object is inclined at a specified upper limit angle, and sets the region between the maximum inclination trajectory and the reference line as a permitted region where the trajectory of the moving body is permitted to pass, The trajectory setting unit sets the trajectory to pass through the permitted region.

4. The control device for a moving body according to claim 1, wherein The region setting unit acquires a plurality of candidate trajectories calculated in advance as the trajectories of the moving body for each inclination angle of the target object, and sets a permitted region where the trajectory of the moving body is permitted to pass, based on the inclination angle on the candidate trajectories and the orientation of the target object acquired by the target object information acquisition unit, The trajectory setting unit sets the trajectory to pass through the permitted region.

5. The control device for a moving body according to claim 4, wherein The region setting unit extracts a first candidate trajectory whose inclination angle is closest to the orientation of the target object from the candidate trajectories with an inclination angle smaller than the orientation of the target object acquired by the target object information acquisition unit, and extracts a second candidate trajectory whose inclination angle is closest to the orientation of the target object from the candidate trajectories with an inclination angle larger than the orientation of the target object acquired by the target object information acquisition unit, and sets the region between the first candidate trajectory and the second candidate trajectory as the permitted region.

6. The control device for a moving body according to claim 4, wherein The region setting unit sets the candidate trajectory whose inclination angle is closest to the orientation of the target object acquired by the target object information acquisition unit as the permitted region, The trajectory setting unit sets the candidate trajectory set as the permitted region as the trajectory.

7. The control device for a moving body according to claim 1, further including: The interference determination unit obtains information on the interference position, which is the position of the target object where the moving body cannot reach the target position due to interference with an obstacle based on the position of the obstacle around the target object and the position of the area where the target object is arranged, and determines whether the target object is located at the interference position according to the detection result of the target object information acquisition unit. When it is determined that the target object is not located at the interference position, the area setting unit and the track setting unit set the prohibited area and the track.

8. The control device for a moving body according to claim 1, comprising: A target object surrounding information acquisition unit that obtains a detection result of target object surrounding information including information on the position and posture of the target object, which is the object to be transported, and information on the position and posture of adjacent objects arranged near the target object; and A transportability determination result acquisition unit that, when the moving body transports the target object to a transport position according to the detection result of the target object surrounding information, obtains a determination result as to whether the target object interferes with the adjacent object. When it is determined that the target object does not interfere with the adjacent object, the movement control unit causes the moving body to transport the target object.

9. The control device for a moving body according to claim 8, wherein The control device further includes a track setting unit that sets a transport track through which the moving body passes when transporting the target object to the transport position according to the information on the position and posture of the target object. The transportability determination result acquisition unit obtains a determination result of an interference area, which is the area through which the target object passes when the moving body transports the target object along the transport track, calculated based on the transport track, and a determination result determined based on the information on the position and posture of the adjacent object.

10. The control device for a moving body according to claim 8, wherein When it is determined that the target object interferes with the adjacent object, the transportability determination result acquisition unit obtains a determination result as to whether the target object can be held based on the target object surrounding information. When it is determined that the target object can be held, the movement control unit causes the moving body to hold the target object and move the target object to a position where it does not interfere with the adjacent object.

11. The control device for a moving body according to claim 10, wherein The fork of the moving body for holding the target object can move in the horizontal direction. When it is determined that the target object can be held, the movement control unit causes the moving body to hold the target object and then moves the fork in the horizontal direction, thereby moving the target object to a position where it does not interfere with the adjacent object.

12. The control device for a moving body according to claim 10, wherein The moving body can rotate. When it is determined that the target object can be held, the movement control unit causes the moving body to hold the target object and then rotate, thereby moving the target object to a position where it does not interfere with the adjacent object.

13. The control device for a moving body according to claim 8, wherein The target object and the adjacent object are trays. The target object surrounding information acquisition unit also acquires the detection result of the position and posture of the goods located near the target object. When, based on the detection result of the target object surrounding information, the mobile body transports the target object to the transport position, the transportability determination result acquisition unit also acquires the determination result of whether the target object interferes with the goods.

14. A mobile body movement control system, which includes the control device and arithmetic device of the mobile body according to any one of claims 8 to 13. The arithmetic device is provided with a transport order setting unit. When it is determined that the target object interferes with the adjacent object, the transport order setting unit acquires the target object surrounding information from the control device, and based on the target object surrounding information, sets the order of transporting the target object and the adjacent object.

15. The mobile body movement control system according to claim 14, wherein When it is set that the transport order setting unit transports the adjacent object first, the movement control unit transports the adjacent object first and then transports the target object.

16. The mobile body movement control system according to claim 14, wherein The arithmetic device includes: A transport execution main body determination unit that determines the mobile body that transports the adjacent object when it is set that the transport order setting unit transports the adjacent object first; and An adjacent object transport command unit that outputs an instruction of the gist of transporting the adjacent object to the mobile body determined by the transport execution main body determination unit.

17. A mobile body, which is provided with the control device of the mobile body according to any one of claims 1 to 13.

18. A mobile control system, which includes the mobile body according to claim 17 and an arithmetic device that sends information related to the movement of the mobile body to the mobile body.

19. A control method for a mobile body, which is a control method for controlling an automatically moving mobile body, and includes the following steps: Acquire the detection result of the orientation of the target object; Based on the orientation of the target object, set a prohibited area where the orbit of the mobile body is prohibited from passing; Set the orbit from the mobile body to the target position that becomes a specified position and orientation relative to the target object so that the orbit does not pass through the prohibited area; and Move the mobile body according to the orbit.

20. The control method for a mobile body according to claim 19, which includes the following steps: Acquire the detection result of the target object surrounding information including the position and posture of the target object and the position and posture of the adjacent object arranged near the target object; When, based on the detection result of the target object surrounding information, the mobile body transports the target object to the transport position, acquire the determination result of whether the target object interferes with the adjacent object; And When it is determined that the target object does not interfere with the adjacent object, cause the mobile body to transport the target object.

21. A storage medium, which is a computer-readable storage medium storing a program for causing a computer to execute a control method for a mobile body that automatically moves, and the program includes the following steps: Acquire the detection result of the orientation of the target object; Set a prohibited area that prohibits the orbit of the moving body from passing through according to the orientation of the target object; Set the orbit from the moving body to the target position that is in a specified position and orientation relative to the target object so that the orbit does not pass through the prohibited area; and Move the moving body according to the orbit.

22. The storage medium according to claim 21, wherein the program further includes the following steps: Obtain the detection result of the target object surrounding information including the position and posture of the target object and the position and posture of the adjacent object disposed near the target object; When, according to the detection result of the target object surrounding information, the moving body transports the target object to the transport position, obtain the determination result of whether the target object interferes with the adjacent object; And When it is determined that the target object does not interfere with the adjacent object, cause the moving body to transport the target object.

Citation Information

Patent Citations

  • Movable body

    JP2017182502A

  • Driving aid device and industrial truck with driving aid device

    CN103568936A

  • Forklift apparatus, forklift control method, and recording medium

    CN110727268A