Mobile object management program, management device, and management method
Patent Information
- Application Number
- JP2025030392
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-27
- Publication Date
- 2026-09-08
Smart Images

Figure 2026143030000001_ABST
Abstract
Description
[Technical Field]
[0001] Embodiments relate to a moving body management program, management apparatus, and management method. [Background Art]
[0002] As automation progresses in logistics sites, moving bodies such as Automated Guided Vehicles (AGVs) are increasingly being introduced to achieve unmanned and efficient product transportation. This type of moving body transports products in accordance with predetermined tasks. In recent years, shelf transport systems have also been known, in which products are transported together with the shelves accommodating them by a moving body. [Prior Art Documents] [Patent Documents]
[0003] [Patent Document 1] Japanese Unexamined Patent Publication No. 2006-195969 [Summary of the Invention] [Problem to be Solved by the Invention]
[0004] In shelf transport systems using moving bodies such as AGVs, discrepancies often occur between the movement timing of the moving body based on a predetermined route plan and the actual movement timing of the moving body. Due to this discrepancy between the movement timing of the moving body based on the predetermined route plan and the actual movement timing of the moving body, it is difficult to generate a long-term and accurate route plan.
[0005] Embodiments provide a moving body management program, management apparatus, and management method that can reduce the discrepancy between the movement timing of a moving body based on a route plan and the actual movement timing of the moving body. [Means for Solving the Problem]
[0006] One embodiment of a mobile object management program involves the computer performing the following actions: obtaining a route instruction including information on multiple waypoints to which the mobile object should travel; calculating the time required for work in the work space for a waypoint that includes a work space among the multiple waypoints included in the route instruction; and generating multiple route plans for the mobile object to travel through the multiple waypoints included in the route instruction, wherein, in generating the route plan after a waypoint that includes a work space, the program generates a route plan such that the mobile object moves to the next destination after the work time calculated for the corresponding waypoint has elapsed. [Brief explanation of the drawing]
[0007] [Figure 1] Figure 1 is a block diagram of a mobile body management device according to an embodiment. [Figure 2] Figure 2 shows an example of map data representing driving areas stored in the driving area database. [Figure 3] Figure 3 shows an example of node information. [Figure 4] Figure 4 shows an example of link information. [Figure 5] Figure 5 is a block diagram showing an example configuration of the path planning generation unit. [Figure 6] Figure 6 is a flowchart showing the process of calculating the waiting time for route planning in the management device. [Figure 7] Figure 7 is a flowchart illustrating the generation and integration of route plans. [Figure 8] Figure 8 is a diagram illustrating the waiting time associated with the rotation of the moving object and the rotation of the shelf. [Figure 9] Figure 9 is a diagram illustrating the integration of route planning. [Figure 10] Figure 10 is a flowchart showing how to notify workers during operation control. [Figure 11] Figure 11 shows an example of how estimated work time is displayed. [Figure 12]Figure 12 shows the hardware configuration of an example of a management device. [Modes for carrying out the invention]
[0008] Embodiments will be described below with reference to the drawings. Figure 1 is a block diagram of a mobile body management device according to the embodiment. The management device 100 is a computer that manages the operation of N (N is a natural number) mobile bodies m1, m2, ..., mN. Mobile bodies m1-mN are autonomous mobile bodies such as AGVs, picking robots, autonomous mobile robots, and self-driving vehicles, or aerial mobile bodies such as drones, and operate based on control commands generated by the management device 100. Mobile bodies m1-mN move within facilities such as factories and warehouses. Furthermore, mobile bodies m1-mN are equipped with batteries as an example, and can move within the travel area of the facility using power from the batteries. Mobile bodies m1-mN may be configured to transport empty shelves to a workstation (WS) as a workspace, and then travel within the facility with the received goods placed on the shelves at the workstation. Mobile bodies m1-mN may also be configured to autonomously store and retrieve goods from shelves. Store and retrieve goods may be done manually.
[0009] The management device 100 includes a management unit 11, a route planning generation unit 12, a mobile unit management unit 13, and a communication unit 14. The management device 100 may also include a travel area database (DB) 21, a mobile unit DB 22, a shelf DB 23, a workspace DB 24, a work time DB 25, an operation instruction DB 26, and a route planning DB 27. The travel area DB 21, mobile unit DB 22, shelf DB 23, workspace DB 24, work time DB 25, operation instruction DB 26, and route planning DB 27 may be databases stored in storage separate from the management device 100.
[0010] The Travel Area DB21 is a database that stores information about travel areas. The travel area information includes map data of facilities that serve as travel areas for mobile vehicles, such as factories and warehouses. The travel area has coordinate information. The locations of workstations, shelves, etc., within the facility, and the locations of obstacles temporarily placed within the facility are associated with the coordinates set in the travel area. Here, the map data may be data defined in advance as a drawing such as CAD (Computer Aided Design). Alternatively, if the mobile vehicle has a function to create an environmental map using a self-position detection function, the map data may be the data of the environmental map created by that function.
[0011] Figure 2 shows an example of map data representing a travel area stored in the travel area DB21. In Figure 2, an example is shown in which two workstations WSa and WSb, 33 shelves S, and four charging spaces c1, c2, c3, and c4 are arranged in the travel area. The area other than workstations WSa and Wsb, shelves S, and charging spaces c1, c2, c3, and c4 is a passageway. Mobile units m1-mN can travel in the passageway. If mobile units m1-mN are drones or the like, they may be configured to also be able to travel in the areas of workstations WSa and Wsb, shelves S, and charging spaces c1, c2, c3, and c4.
[0012] Workstations WSa and WSb receive goods into or out of shelves S. Workstation WSa receives or outsells goods in the order a1, a2, ..., a8. Similarly, workstation WSb receives or outsells goods in the order b1, b2, ..., b8. In addition, goods can be received into each shelf S. Here, the labels attached to shelves S in Figure 2 are node IDs representing the location of each shelf S.
[0013] The traveling area DB 21 may further store information related to a traveling path network. The traveling path network is a traveling path for a mobile object represented by a network structure, which is set in association with a traveling area. The traveling path network is constituted by nodes and links. The nodes represent positions to which the mobile object moves, and are associated with coordinates of the traveling area. The links represent connections between the nodes.
[0014] Figure 3 shows an example of node information. The node information includes information of a node ID, an X coordinate, and a Y coordinate. The node ID is an ID uniquely assigned to each node for identifying each node. The X coordinate is the X coordinate of the position of the node with the corresponding node ID on map data. The Y coordinate is the Y coordinate of the position of the node with the corresponding node ID on map data.
[0015] Figure 4 shows an example of link information. The link information includes information of a link ID, a first node ID, a second node ID, and node directionality. The link ID is an ID uniquely assigned to each link for identifying each link. The first node ID is the node ID of a connection source node of the link with the corresponding link ID. The second node ID is the node ID of a connection destination node of the link with the corresponding link ID. The node directionality indicates whether movement between nodes is bidirectional or restricted to one direction. If it is bidirectional, the mobile object can travel from the connection source node to the connection destination node, and can also travel from the connection destination node to the connection source node. On the other hand, if it is unidirectional, the mobile object can only travel from the connection source node to the connection destination node.
[0016] The mobile object DB 22 is a database storing respective information of mobile objects m1 to mN. The mobile object information includes real-time positions. The position of a mobile object can be obtained, for example, from data received from the mobile object at fixed time intervals. Alternatively, the position of a mobile object may be obtained from a sensor provided in the travel area. In this case, the sensors are installed, for example, at the position of each node, and when detecting that a mobile object has passed the corresponding node, they notify the management apparatus 100 of this fact. The mobile object information stored in the mobile object DB 22 may include information other than positions. For example, the mobile object information can include the remaining battery level. Further, when a mobile object is configured to convey products, the mobile object information can include information indicating whether the mobile object carries a product, and if it does, information such as the type and number of products being conveyed. Furthermore, the mobile object information can include information related to the specifications of each mobile object. The specification information of a mobile object can include, for example, information such as standard speed, maximum speed, minimum speed, size, travelable directions, and shelf lifting and lowering capabilities. The shelf lifting and lowering capabilities can be the time required for the mobile object to lift a shelf and the time required for the mobile object to lower a shelf. Further, when a mobile object is configured to enable product warehousing and delivery, the mobile object information can include information such as the working time required for these operations.
[0017] The shelf DB 23 is a database storing shelf information for each shelf installed in the travel area and product information for products stored in the shelves. The shelf information includes the node ID of each shelf. Further, the shelf information includes information on whether a product is stored therein. Also, the shelf information includes, when a product is stored, information on the arrangement position of the product on the shelf, and when no product is stored, information on the arrangement position for placing a product on the shelf. The arrangement position can be, for example, information such as which level of the shelf the product is stored on. In addition, the shelf information can include information on shelf conditions such as the number of levels of the shelf, the weight of the shelf, and the classification of the shelf. The product information includes information such as the type, number, size, and weight of products.
[0018] The workspace DB24 is a database that stores workspace information related to the workspaces where workers operate shelves. A workspace may include workstations WSa and WSb, as shown in Figure 2. The workspace information includes the node ID of the workspace. It also includes information about the size of the workspace.
[0019] The Work Time DB25 is a database that stores work information related to work time in a workspace. The work information includes information about the workers who work in the workspace. Worker information includes information such as the worker's ID and work ability. Work ability includes information such as the worker's skill level and height. The worker's skill level can be evaluated from the worker's years of experience, past work time required for receiving or shipping goods, etc. Past work time may be measured for each condition such as the type of goods received or shipped and the shelf location.
[0020] The operation instruction DB26 is a database that stores operation instructions. Operation instructions are information related to tasks assigned to mobile units. Tasks can be entered by a user of the management device 100. Operation instructions include an operation instruction ID and information on waypoints. The operation instruction ID is an ID assigned to each operation instruction. Waypoints are the node IDs of the points that each mobile unit should move to, such as shelves, workstations, and charging spaces. Furthermore, depending on the configuration of the mobile unit, the task information may also include information on the originating point, the destination point, and the content of operations such as receiving and shipping goods at points in between.
[0021] The route plan DB27 is a database that stores route plan information generated by the route plan generation unit 12. A route plan is information about the route by which a moving object will move in order to execute an operation instruction. The route plan information includes route plan ID, travel route, and time information. The route plan ID is an ID assigned to each route plan. The travel route is the node ID of each point that the moving object will pass through on the route from waypoint to waypoint. The time is the scheduled time that the moving object will pass through each point.
[0022] The management unit 11 manages the operations of the route planning generation unit 12, the mobile unit management unit 13, and the communication unit 14, respectively. For example, the management unit 11 instructs the route planning generation unit 12 to generate an operation plan. The management unit 11 then retrieves the route plan generated by the route planning generation unit 12 from the route planning DB 27 and instructs the control of the operation of mobile units m1-mN based on the route plan.
[0023] The route planning generation unit 12 generates route plans for each of the mobile units m1-mN based on the information stored in the travel area DB21, mobile unit DB22, shelf DB23, work space DB24, work time DB25, and operation instruction DB26. The route planning generation unit 12 then stores the generated route plans in the route plan DB27. Figure 5 is a block diagram showing an example configuration of the route planning generation unit 12. The route planning generation unit 12 includes a waiting time calculation unit 12a, a route planning generation unit 12b, and a route planning integration unit 12c.
[0024] The waiting time calculation unit 12a calculates the waiting time for each moving object. The waiting time includes the time required for the operator to operate the shelves, the time required for the moving object to raise and lower the shelves, and other waiting times that occur when each moving object arrives at a waypoint. The waiting time also includes other waiting times unrelated to the shelves, such as the time required for the moving object to charge, the time required for the moving object to rotate, and waiting times at traffic lights if there are traffic lights in the route. The waiting time may also be calculated based on external input from the user of the management device 100.
[0025] The path planning generation unit 12b generates a path plan for each moving body m1-mN, between each waypoint. The generation of the path plan between each waypoint may be performed using any method. For example, when path plans for multiple moving bodies are generated simultaneously, the path plan for each moving body may be generated in such a way that the total travel distance of each moving body is minimized, provided that no collisions occur between the multiple moving bodies.
[0026] The route planning integration unit 12c integrates the route plans for each waypoint, which were generated by the route planning generation unit 12b based on the waiting times calculated by the waiting time calculation unit 12a, into a single route plan.
[0027] The mobile unit management unit 13 manages the status of each mobile unit. For example, the mobile unit management unit 13 acquires the current location detected by the sensors of mobile units m1-mN via the communication unit 14 and updates the current location of each mobile unit stored in the mobile unit DB 22 based on the acquired current location. Also, for example, the mobile unit management unit 13 acquires the battery level of mobile units m1-mN via the communication unit 14 and updates the battery level of each mobile unit stored in the mobile unit DB 22 based on the acquired battery level.
[0028] The communication unit 14 performs communication between the management device 100 and the mobile devices m1-mN. The communication unit 14 also performs communication between the management device 100 and the display device D. The communication unit 14 performs communication between the management device 100 and the mobile devices m1-mN and the display device D, for example, wirelessly.
[0029] Next, the operation of the management device 100 will be explained. Figure 6 is a flowchart showing the operation of the management device 100 in calculating the waiting time for route plan generation.
[0030] In step S1, the waiting time calculation unit 12a of the management device 100 acquires the operation instruction stored in the operation instruction DB 26.
[0031] In step S2, the waiting time calculation unit 12a assigns a run instruction to each of the moving bodies m1-mN. For example, the waiting time calculation unit 12a may assign a run instruction based on the proximity of the current position of each moving body m1-mN to the first waypoint.
[0032] In step S3, the waiting time calculation unit 12a calculates the waypoints for each mobile unit m1-mN based on the operation instructions assigned to each mobile unit m1-mN. The waypoints include the location of shelves, the location of workstations as workspaces, and the location of charging spaces. The waiting time calculation unit 12a can calculate the waypoints from the waypoint information included in the operation instructions.
[0033] In step S4, the waiting time calculation unit 12a determines whether the workspace is included in the waypoints assigned to any of the moving bodies m1-mN. For example, if the location of the workstation is included in the waypoints, it is determined that the workspace is included in the waypoints. If it is determined in step S4 that the workspace is included in the waypoints, the process proceeds to step S5. If it is determined in step S4 that the workspace is not included in the waypoints, the process proceeds to step S8.
[0034] In step S5, the waiting time calculation unit 12a obtains work information from the work time DB 25. The waiting time calculation unit 12a also obtains product information and shelf information from the shelf DB 23.
[0035] In step S6, the waiting time calculation unit 12a calculates the shelf operation time as waiting time that occurs in each workspace. The shelf operation time is the time required for an operator to operate the shelf S in a workspace, for example, workstations WSa and WSb. Shelf operations include, for example, the dispatching or receiving of goods. For example, if goods are dispatched in a workspace, the waiting time calculation unit 12a calculates the shelf operation time required for the dispatching of goods. Also, for example, if goods are received in a workspace, the waiting time calculation unit 12a calculates the shelf operation time required for the receiving of goods. The shelf operation time is determined based on the type and number of goods to be dispatched or received, and the position in which the goods are placed or to be placed on the shelf, using the work time based on the skill level of each operator scheduled to work in each workspace as a transit point as a basis. If the size and number of goods are larger than under the conditions under which past work time was measured, the waiting time calculation unit 12a increases the work time according to the difference in size and number compared to past conditions. Furthermore, if the waiting time calculation unit 12a is located on or will be located on a different shelf than the conditions under which the working time was measured in the past, it will increase or decrease the working time according to the difference in height from the past conditions. The waiting time calculation unit 12a can calculate the shelf operation time by inputting conditions such as past working time, product type, and shelf location into a function that outputs shelf operation time. On the other hand, the calculation of shelf operation time is not limited to the method exemplified here and may be performed by any method. For example, shelf operation time may be calculated by inputting conditions such as past working time, product type, and shelf location into a trained machine learning model that outputs shelf operation time. In addition, if the mobile unit m1-mN is configured to allow both outbound and inbound operations, the waiting time calculation unit 12a may calculate the shelf operation time from the working time of the mobile unit m1-mN.
[0036] In step S7, the waiting time calculation unit 12a stores the intermediate points and shelf operation times in a memory device in association with each other.
[0037] In step S8, the waiting time calculation unit 12a determines whether any of the transit points assigned to any of the mobile bodies m1-mN include transit points where raising or lowering shelves by the mobile bodies m1-mN is required. If it is determined in step S8 that transit points where raising or lowering shelves are required are included, the process proceeds to step S9. If it is determined in step S8 that transit points where raising or lowering shelves are required are not included, the process proceeds to step S12.
[0038] In step S9, the waiting time calculation unit 12a obtains information from the mobile body DB 22 as mobile body information, which is the shelf raising or lowering capacity of the mobile body to which a transit point requiring shelf raising or lowering has been assigned.
[0039] In step S10, the waiting time calculation unit 12a calculates the shelf raising or lowering time as the waiting time that occurs at each intermediate point. The shelf raising or lowering time may be determined according to the shelf raising capacity or lowering capacity.
[0040] In step S11, the waiting time calculation unit 12a stores the intermediate points and the time required to raise or lower the shelves in a storage device.
[0041] In step S12, the waiting time calculation unit 12a determines whether a charging space is included in the waypoint assigned to any of the moving bodies m1-mN. If it is determined in step S12 that a charging space is included in the waypoint, the process proceeds to step S13. If it is determined in step S12 that a charging space is not included in the waypoint, the process in Figure 6 ends.
[0042] In step S13, the waiting time calculation unit 12a obtains information from the mobile body DB22 as mobile body information, specifically the remaining battery level of the mobile body to which the charging space has been assigned as a waypoint.
[0043] In step S14, the waiting time calculation unit 12a calculates the charging time, which is the waiting time that occurs in the charging space. The charging time may be calculated from the remaining battery charge.
[0044] In step S15, the waiting time calculation unit 12a stores the intermediate points and charging times in a memory device. After that, the process shown in Figure 6 is completed.
[0045] Figure 7 is a flowchart illustrating the generation and integration of route plans. In step S101, the route plan generation unit 12b obtains from the storage device the waypoints assigned to each of the mobile bodies m1-mN, and the waiting time calculated for each waypoint. The waiting time may include the shelf operation time, shelf raising or lowering time, and charging time mentioned above.
[0046] After obtaining waypoints and waiting times, the route planning generation unit 12b executes the loop processing steps S102-S111 for each of the moving bodies m1-mN. After the processing up to moving body mN is completed, the process moves to step S112. The loop processing steps S102-S111 will be described below.
[0047] In step S102, the route planning generation unit 12b obtains the current position of the mobile object being processed. The position of the mobile object may be its actual current position before the virtual movement of the mobile object, and may be a virtual position after the virtual movement of the mobile object. The actual current position may be obtained from the mobile object DB 22.
[0048] In step S103, the route planning generation unit 12b determines whether the current position of the moving object to be processed is a waypoint. If it is determined in step S103 that the current position of the moving object to be processed is not a waypoint, the process proceeds to step S104. If it is determined in step S103 that the current position of the moving object to be processed is a waypoint, the process proceeds to step S105.
[0049] In step S104, the route planning generation unit 12b determines whether the waiting time has elapsed. The waiting time in step S104 is the waiting time associated with the rotation of the moving body and / or shelf, which will be explained later. In step S104, there may be cases where no waiting time is set. Even if no waiting time is set, it is determined that the waiting time has elapsed. If it is determined in step S104 that the waiting time has elapsed, the process proceeds to step S111. If it is determined in step S104 that the waiting time has not elapsed, the loop processing for the currently processed moving body ends without updating the position of the moving body.
[0050] In step S105, the route plan generation unit 12b generates a route plan for the currently processed moving object. As described above, the route plan includes information on the route plan ID, the route traveled, and the time. In this embodiment, a route plan between waypoints is generated each time the moving object reaches a waypoint.
[0051] In step S106, the route planning generation unit 12b determines whether the current position of the mobile object being processed is the last waypoint. If it is determined in step S106 that the current position of the mobile object being processed is the last waypoint, the loop processing for the current mobile object being processed ends. If it is determined in step S106 that the current position of the mobile object being processed is not the last waypoint, the process proceeds to step S107.
[0052] In step S107, the route planning generation unit 12b determines whether the waiting time has elapsed. The waiting time in step S107 may be the shelf operation time, shelf raising or lowering time, or charging time calculated for the current waypoint. If multiple types of waiting times occur at one waypoint, the route planning generation unit 12b may make the determination in step S107 based on the sum of those multiple types of waiting times. If it is determined in step S107 that the waiting time has elapsed, the process proceeds to step S108. In other words, in this embodiment, when a waiting time occurs at a waypoint, the route plan to the next waypoint is not generated until the waiting time has elapsed. To put it another way, in this embodiment, when a waiting time occurs at a waypoint, the route plan is generated so that the moving object moves to the next destination position after the waiting time has elapsed. If it is determined in step S107 that the waiting time has not elapsed, the loop processing for the moving object currently being processed is terminated.
[0053] In step S108, the path planning generation unit 12b calculates the next destination position of the currently processed moving object. The next destination position is a node adjacent to the current node that will not collide with any other moving objects at the next time step. As long as no collisions between moving objects occur, the path planning generation unit 12b may calculate the node with the shortest distance to the next waypoint as the next destination position.
[0054] In step S109, the path planning generation unit 12b determines whether rotation is required at the current position of the moving object to be processed. Rotation here includes rotation of the moving object itself and rotation of the shelf. If it is determined in step S109 that rotation is required at the current position of the moving object to be processed, the process proceeds to step S110. If it is determined in step S109 that rotation is not required at the current position of the moving object to be processed, the process proceeds to step S111.
[0055] For example, consider a scenario where, as shown in Figure 8, a mobile body m1 travels along path p1, lifts a shelf S at an intermediate point, and then travels along path p2. In the example in Figure 8, mobile body m1 rotates at nodes 133 and 97 to change its direction of travel by 90 degrees. This rotation of mobile body m1 usually takes several seconds. Depending on the type of shelf S, it may also be necessary to lower the shelf S in a specific orientation at intermediate points. In this case, the mobile body rotates the shelf S to align it to the specific orientation. In the example in Figure 8, mobile body m2 rotates the shelf S at node 1 while traveling along path p3. In this embodiment, the time required for the rotation of the shelf at or between intermediate points is also considered waiting time.
[0056] Now, let's return to the explanation of Figure 7. In step S110, the route planning generation unit 12b sets a waiting time according to the rotation conditions of the mobile body currently being processed. In the example in Figure 8, the mobile body m1 rotates at node 133 and node 97 to change its direction of travel by 90 degrees. Here, the time required for rotation when the shelf S is present is usually longer than the time required for rotation when the shelf S is not present. In other words, the time required for rotation at node 133 and the time required for rotation at node 97 are different even if the rotation angle is the same. Also, the time required for rotation increases proportionally as the rotation angle increases. Therefore, it is desirable that the time required for rotation be stored in advance in the mobile body DB 22 as time for each rotation angle and for each presence or absence of a shelf. When rotation of the mobile body is necessary, the route planning generation unit 12b can obtain the time according to the rotation conditions of the mobile body from the mobile body DB 22. The time required for shelf rotation is also stored in advance in the mobile body DB 22. The route planning generation unit 12b can obtain the time required for shelf rotation from the mobile body DB22 when shelf rotation is necessary. In the example shown in Figure 8, the mobile body m2 rotates the shelf S and also rotates to change its direction of travel by 90 degrees. Therefore, the waiting time for the mobile body m2 is the sum of (time required for shelf rotation) and (time required for the mobile body to rotate).
[0057] Now, let's return to the explanation of Figure 7. In step S111, the path planning generation unit 12b updates the destination position of the moving object to be processed. After that, the loop processing for the currently processed moving object is completed.
[0058] In step S112, after the loop processing for all moving objects is complete, the path planning generation unit 12b advances time by a predetermined amount. At this time, the path planning generation unit 12b virtually updates the position of each moving object whose destination position has been updated. In other words, it virtually moves each moving object whose destination position has been updated to an adjacent node. On the other hand, for moving objects whose destination position has not been updated, the waiting time is reduced by the amount of time that was advanced. After that, the process moves on to step S113.
[0059] In step S113, the route plan generation unit 12b determines whether the route plan generation is complete. In step S113, the route plan generation is determined to be complete when each of the positions of the moving objects m1-mN becomes the last waypoint. If it is determined in step S113 that the route plan generation is not complete, the process returns to the loop process described above. If it is determined in step S113 that the route plan generation is complete, the process proceeds to step S114.
[0060] In step S114, the route planning integration unit 12c receives one or more route plans generated for each mobile object from the route planning generation unit 12b. The route planning integration unit 12c then integrates the received route plans. The route planning integration unit 12c then stores the integrated route plans in the route planning DB 27. After that, the process shown in Figure 7 is completed. The integration of route plans will be explained below with reference to Figure 9.
[0061] Figure 9 shows an example where three path plans are generated for a mobile object m1. The first path plan includes a path p1 to move mobile object m1, which was located at node 97, to shelf S at node 102. The second path plan includes a path p2 to move mobile object m1, which is holding shelf S at node 102, to the workspace at node 26. The third path plan includes a path p3 to move mobile object m1, which is holding shelf S with goods received at node 26, to node 102.
[0062] The route planning integration unit 12c combines routes p1, p2, and p3 into a single route. Here, between routes p1 and p2, time occurs at node 102 for the moving object m1 to lift shelf S. However, the update of the destination position from the waypoint in route p2 is performed after the shelf S lifting time has elapsed. Therefore, the route planning integration unit 12c can treat routes p1 and p2 as a single route. Similarly, between routes p2 and p3, time occurs at node 26 for the worker to place goods into shelf S. However, the update of the destination position from the waypoint in route p2 is performed after the shelf operation time has elapsed. Therefore, the route planning integration unit 12c can treat routes p2 and p3 as a single route. In this way, in the embodiment, a long-term route plan can be generated for each moving object that takes into account the waiting time of the moving object that may occur at each waypoint.
[0063] In the process shown in Figure 7, waiting time is taken into consideration during the generation of the route plan. In contrast, the route plan may be generated without considering waiting time. In this case, when the route plan integration unit 12c integrates the preceding and succeeding route plans, it shifts the passage time of each node in the subsequent route plan by the amount of waiting time that occurs at the waypoints of the preceding route plan before integrating them. This allows for the generation of long-term route plans for each moving object that take into account the waiting time that may occur for each moving object at each waypoint, similar to when waiting time is considered during the generation of the route plan.
[0064] Figure 10 is a flowchart showing notifications to operators during operation control. After the route plan is stored in the route plan DB 27, the management unit 11 retrieves the route plan from the route plan DB 27 and controls the operation of the mobile units m1-mN based on the retrieved route plan. For example, the management unit 11 generates control commands for each mobile unit based on the route plan. The management unit 11 then controls the operation of the mobile units by transmitting the control commands to the mobile units using the communication unit 14. In conjunction with this control of the mobile units m1-mN, the management unit 11 can perform the processing shown in Figure 10.
[0065] In step S201, the management unit 11 acquires the positions of each of the moving bodies m1-mN. The timing of acquiring the positions may be the same as the predetermined time used to update the positions of the moving bodies in the route planning generation, as explained in step S112 of Figure 7.
[0066] In step S202, the management unit 11 determines whether the position of any of the moving objects is a waypoint. If it is determined in step S202 that the position of any of the moving objects is a waypoint, the process proceeds to step S202. If it is determined in step S202 that the position of any of the moving objects is not a waypoint, the process proceeds to step S211.
[0067] In step S203, the management unit 11 stores the arrival time of the moving object that has arrived at the transit point in the storage device.
[0068] In step S204, the management unit 11 displays the estimated work time on the display device D located at the transit point where the mobile object arrived. For example, if the transit point is a workspace such as a workstation, the estimated work time may be the shelf operation time. The shelf operation time may be the shelf operation time calculated in step S6 of Figure 6. Figure 11 is a diagram showing an example of the estimated work time display. Figure 11 shows an example of the display when a mobile object m carrying a shelf S arrives at a workspace which serves as a transit point. In the workspace, worker W performs the task of placing product I into shelf S. The estimated work time for this placement task is displayed on the display device D. The display device D may be a terminal such as a personal computer that is pre-installed in the workspace, or it may be a smartphone or the like that worker W possesses. In other words, various terminals with display functions can be used as the display device D. Furthermore, the estimated work time does not necessarily have to be notified to worker W by display. The estimated work time may also be notified by voice or the like.
[0069] Worker W can learn that the moving object has arrived at the waypoint through notification of the estimated work time from the control unit 11. Worker W then performs the work in the work space. After the work is completed, worker W instructs the moving object m to start moving. The instruction to start moving is not limited to this, but can be given, for example, by pressing a predetermined button. Upon receiving the instruction to start moving, the moving object m begins moving to the next waypoint. In step S205, the control unit 11 determines whether the movement of the moving object has started, that is, whether the work in the work space has been completed. If it is determined in step S205 that the movement of the moving object has started, the process proceeds to step S206. If it is determined in step S205 that the movement of the moving object has not started, the process proceeds to step S211.
[0070] In step S206, the management unit 11 stores the start time of the movement of the moving object as the completion time of the work in the storage device.
[0071] In step S207, the management unit 11 calculates the work time. The work time can be calculated as the difference between the arrival time and the work completion time.
[0072] In step S208, the management unit 11 calculates a work score. The work score is a score for evaluating the efficiency of the current work. When the current work score is s(n+1) (where n is a non-negative integer), s(n+1) can be calculated, for example, according to the following equation (1). In equation (1), s(n) is the previous work score. s(n) may also be the average work score of multiple past works. The initial value s(0) of s(n) may be, for example, 0. d is the work time calculated in step S207. f is a predetermined function or model that takes s(n) and d as inputs and outputs s(n+1). f may be, for example, a function that weights s(n) such that s(n+1) becomes larger as d is smaller, i.e., as the work time is shorter. s(n+1)=f(s(n),d) Equation (1)
[0073] In step S209, the management unit 11 stores the worker and the work score in a memory device, associating them with each other. The work score stored in the memory device can be used to evaluate the worker's skill level, calculate the time for the next operation, and so on.
[0074] In step S210, the management unit 11 displays the work score on the display device D. Displaying the work score may be omitted. Displaying the work score is expected to increase worker motivation, etc.
[0075] In step S211, the management unit 11 determines whether the process is complete or not. For example, the process is determined to be complete when all moving objects have arrived at the final waypoint. If it is determined in step S211 that the process is not complete, the process returns to step S201. If it is determined in step S211 that the process is complete, the process shown in Figure 10 ends.
[0076] As described above, according to the embodiment, the route plan is generated so as to delay the time by the amount of waiting time, such as shelf operation time, that may occur at intermediate points. This allows multiple route plans to be integrated without contradiction. Therefore, it is also possible to generate long-term route plans for each moving object.
[0077] Furthermore, by taking waiting times into account, it is expected that the discrepancy between the movement timing of the moving object based on the route plan and the actual movement timing of the moving object will be reduced. By reducing the discrepancy between the movement timing of the moving object based on the route plan and the actual movement timing of the moving object, it may be possible to suppress the sudden occurrence of waiting times for moving objects that were not present in the original route plan.
[0078] Furthermore, the waiting time is not a fixed waiting time, but is calculated each time a route plan is generated. This is also expected to reduce the discrepancy between the movement timing of the moving object based on the route plan and the actual movement timing of the moving object.
[0079] Next, the hardware configuration of an example of the management device 100 will be described. Figure 12 is a diagram showing the hardware configuration of an example of the management device 100. As shown in Figure 12, the management device 100 is a computer having a processor 101, an input interface 102, a display 103, a communication device 104, memory 105, and storage 106. The processor 101, the input interface 102, the display 103, the communication device 104, the memory 105, and the storage 106 are connected via a bus 107.
[0080] The processor 101 is a processor that controls the overall operation of the management device 100. The processor 101 operates as the management unit 11, the route planning generation unit 12, and the mobile unit management unit 13 by executing a management program 1061 stored in, for example, the storage 106. The processor 101 is, for example, a CPU. The processor 101 may also be an MPU, GPU, ASIC, FPGA, etc. The processor 101 may be a single CPU, etc., or multiple CPUs, etc.
[0081] The input interface 102 includes input devices such as a touch panel, keyboard, and mouse. When an input device is operated, a signal corresponding to the operation is input to the processor 101 via the bus 107. The processor 101 performs various processes in response to this signal. The input interface 102 can be used to input various types of waiting times.
[0082] The display 103 is a display device such as a liquid crystal display or an organic EL display. The display 103 may be used, for example, to notify the user of the management device 100 of the work score.
[0083] The communication device 104 is a device for the management device 100 to communicate with an external device. The communication device 104 operates as a communication unit 14 together with the processor 101. The external device is, for example, a mobile device. The communication device 104 may be a communication device for wired communication or a communication device for wireless communication.
[0084] Memory 105 is a storage device that includes ROM and RAM. ROM is a non-volatile memory. ROM stores the startup program for the management device 100, etc. RAM is a volatile memory. RAM is used, for example, as working memory during processing in the processor 101.
[0085] Storage 106 is, for example, a hard disk drive or a solid-state drive. Storage 106 stores various programs executed by the processor 101, such as the management program 1061. Storage 106 may also store a travel area database (DB) 21, a mobile body DB 22, a shelf DB 23, a workspace DB 24, a work time DB 25, an operation instruction DB 26, and a route plan DB 27. The management device 100 may store the travel area database (DB) 21, the mobile body DB 22, the shelf DB 23, the workspace DB 24, the work time DB 25, the operation instruction DB 26, and the route plan DB 27 on a server that can communicate with the management device 100. In this case, the management device 100 sends and receives necessary data to and from the server using a communication device 104.
[0086] The instructions shown in the processing procedure described in the above-described embodiment can be executed based on a software program. A general-purpose computer system can also obtain the same effects as the management device described above by pre-storing this program and reading it. The instructions described in the above-described embodiment are recorded as a program that can be executed by a computer on a magnetic disk (flexible disk, hard disk, etc.), optical disk (CD-ROM, CD-R, CD-RW, DVD-ROM, DVD±R, DVD±RW, Blu-ray® Disc, etc.), semiconductor memory, or similar recording medium. Any storage format is acceptable as long as it is a recording medium that can be read by a computer or embedded system. The computer can read the program from this recording medium and have the CPU execute the instructions described in the program based on this program, thereby achieving the same operation as the management device in the above-described embodiment. Of course, when the computer acquires or reads the program, it may do so via a network. Furthermore, an operating system (OS) running on a computer, a database management software, a network, or other middleware (MW) operating on a computer, based on instructions from a program installed on a computer or embedded system from a recording medium, may execute some of the processes necessary to realize this embodiment. Furthermore, the recording medium in this embodiment is not limited to a medium independent of the computer or embedded system, but also includes recording media that store or temporarily store programs downloaded via LAN, the Internet, etc. Furthermore, the recording medium is not limited to one; even when the processing in this embodiment is performed from multiple media, these are also included as recording media in this embodiment, and the configuration of the media may be any configuration.
[0087] In this embodiment, the computer or embedded system is used to execute each process in this embodiment based on a program stored on a recording medium, and may be configured as any of the following: a single device such as a personal computer or microcomputer, or a system in which multiple devices are connected via a network. Furthermore, the term "computer" in this embodiment is not limited to personal computers, but also includes arithmetic processing units, microcontrollers, and the like included in information processing equipment, and refers collectively to any equipment or device capable of realizing the functions of this embodiment through a program.
[0088] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims and their equivalents. [Explanation of Symbols]
[0089] 11 Management Unit, 12 Route Planning Generation Unit, 12a Waiting Time Calculation Unit, 12b Route Planning Generation Unit, 12c Route Planning Integration Unit, 13 Mobile Unit Management Unit, 14 Communication Unit, 21 Driving Area Database (DB), 22 Mobile Unit DB, 23 Shelf DB, 24 Workspace DB, 25 Working Time DB, 26 Operation Instruction DB, 27 Route Planning DB, 100 Management Device, 101 Processor, 102 Input Interface, 103 Display, 104 Communication Device, 105 Memory, 106 Storage, 107 Bus.
Claims
1. Obtaining operational instructions that include information on multiple waypoints the moving object should travel to, With respect to the multiple waypoints included in the aforementioned route instructions, and the waypoint that includes a work space, calculate the work time required for work in the work space. The process involves generating multiple route plans for the moving body to travel between the multiple waypoints included in the operation instructions, wherein, in generating the route plan after a waypoint that includes a work space, the route plan is generated such that the moving body moves to the next destination position after the work time calculated for the corresponding waypoint has elapsed. A mobile management program that causes a computer to execute a command.
2. Based on the aforementioned work time, multiple route plans are integrated into one. A mobile body management program according to claim 1, which causes the computer to execute the following.
3. With respect to the intermediate point among the multiple intermediate points included in the aforementioned operation instructions that includes the raising or lowering of the shelf by the moving body, calculate the time required for raising or lowering the shelf. The route plan is generated such that the moving body moves to the next destination position after the elapsed time of the lifting or lowering calculated for the corresponding waypoints, A mobile body management program according to claim 1, further to cause the computer to execute the program.
4. To calculate the charging time of the mobile body at one of the multiple waypoints included in the aforementioned operation instructions, which includes the charging space for the mobile body; The path plan is generated such that the moving object moves to the next destination position after the charging time calculated for the corresponding waypoint has elapsed, A mobile body management program according to claim 1, further to cause the computer to execute the program.
5. In generating the path plan after the destination position which requires the rotation of the moving body and / or the rotation of the shelf, the path plan is generated such that the moving body moves to the next destination position after the time required for the rotation of the moving body and / or the time required for the rotation of the shelf has elapsed. A mobile body management program according to claim 1, further to cause the computer to execute the program.
6. The operation of the moving object is controlled based on the aforementioned route plan. A mobile body management program according to claim 1, further to cause the computer to execute the program.
7. The aforementioned work time is displayed on a display device. A mobile body management program according to claim 1, further to cause the computer to execute the program.
8. A calculation unit that obtains a route instruction including information on multiple waypoints to which a moving object should travel, and calculates the work time required for work in the work space for one of the waypoints included in the route instruction, which includes a work space. A route planning generation unit that generates multiple route plans for the moving object to travel through the multiple waypoints included in the operation instruction, It is equipped with, In generating the route plan after a waypoint including the work space, the route plan generation unit generates the route plan such that the moving object moves to the next destination position after the work time calculated for the corresponding waypoint has elapsed. A device for managing mobile objects.
9. Obtaining operational instructions that include information on multiple waypoints the moving object should travel to, With respect to the multiple waypoints included in the aforementioned route instructions, and the waypoint that includes a work space, calculate the work time required for work in the work space. The process involves generating multiple route plans for the moving body to travel through the multiple waypoints included in the operation instructions, wherein, in generating the route plan after a waypoint that includes a work space, the route plan is generated such that the moving body moves to the next destination position after the work time calculated for the corresponding waypoint has elapsed. A method for managing a mobile body equipped with the following.
Citation Information
Patent Citations
Apparatus for generating movement path for autonomous mobile robot
JP2006195969A