A robot scheduling method, device, equipment and storage medium
By obtaining the tasks to be delivered and the status information of the robot loading status, and determining and scheduling the appropriate robot execution tasks, the problem that robots in the prior art cannot meet the diverse distribution needs, improving the robot utilization rate and saving costs.
Patent Information
- Application Number
- CN202110474790.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-29
- Publication Date
- 2025-02-07
- Estimated Expiration
- 2041-04-29
AI Technical Summary
In the existing logistics and transportation systems, the same type of robot cannot meet the diverse distribution needs, resulting in low robot utilization.
By obtaining the information of the task to be delivered and the loading status information of each robot, the target robot is determined and dispatching instructions are sent to the target robot to make it perform the task to be delivered. This method schedules and loads robots of the corresponding storage box type according to the type of delivery task.
It realizes scheduling robots according to the type of delivery task, meets the requirements of different delivery tasks, improves the utilization rate of the robots, and saves investment costs.
Smart Images

Figure CN113095717B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of logistics technology, and in particular to a robot scheduling method, device, equipment and storage medium. Background Art
[0002] As computer technology continues to develop towards intelligence, the application fields of robots continue to expand and deepen, and robot technology is rapidly expanding from industrial manufacturing to medical services, entertainment education, home services and other fields. The delivery needs of robots are becoming more and more diverse, and the delivery requirements are becoming more and more stringent.
[0003] For example, special use environments such as food and medical treatment have strict requirements on the sanitary conditions and loading conditions of delivery robots. In the existing logistics and transportation system, the same type of robots often cannot meet various delivery needs, resulting in low robot utilization. Summary of the invention
[0004] The embodiments of the present invention provide a robot scheduling method, device, equipment and storage medium, so as to achieve the ability to schedule robots loaded with corresponding storage box types to execute delivery tasks according to the types of delivery tasks, meet the requirements of different delivery tasks, improve the utilization rate of robots and save investment costs.
[0005] In a first aspect, an embodiment of the present invention provides a robot scheduling method, comprising:
[0006] Obtain the task information to be delivered and the loading status information of each robot corresponding to the task to be delivered;
[0007] Determining a target robot according to the information of the task to be delivered and the carrying status information of each of the robots;
[0008] A scheduling instruction is sent to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction.
[0009] Furthermore, the carrying status information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the information on the task to be delivered includes the type of the task to be delivered and the departure place information of the task to be delivered.
[0010] Further, determining the target robot according to the information of the task to be delivered and the loading status information of each of the robots includes:
[0011] According to the type of the task to be delivered, query a mapping table between the type of the delivery task and the type of the storage cavity contained in the delivery box, and determine a target delivery box, wherein the type of the storage cavity contained in the target delivery box matches the type of the task to be delivered;
[0012] Determine a target robot from first robots that meet a first preset condition, wherein the first robot is a robot carrying a delivery box;
[0013] If all of the first robots do not meet the first preset condition, a target robot is determined from the second robots, where the second robot is a robot that does not carry a delivery box;
[0014] If all the robots are equipped with a delivery box and the first preset condition is not met, the first robot that meets the second preset condition is determined as the first dispatchable robot; the delivery box carried by the first dispatchable robot is replaced with a target delivery box, and the first dispatchable robot is determined as the target robot;
[0015] Among them, the first preset condition is that the delivery box is the target delivery box; the second preset condition is that the time for the robot to arrive at the departure point of the task to be delivered is the shortest, and the time for arriving at the departure point of the task to be delivered is determined based on the departure point information.
[0016] Further, determining the target robot from the first robots that meet the first preset condition includes:
[0017] Determine a first robot that meets a first preset condition as a second dispatchable robot;
[0018] If the number of the first dispatchable robot is one, determining the second dispatchable robot as the target robot;
[0019] If the number of the first dispatchable robots is greater than one, a second dispatchable robot that meets the second preset condition is determined as the target robot.
[0020] Further, determining the target robot from the second robots includes:
[0021] If the number of the second robot is one, determining the second robot as a third dispatchable robot;
[0022] If the number of the second robots is greater than one, determining the second robot that meets the second preset condition as the third dispatchable robot;
[0023] The third dispatchable robot is loaded with a target delivery box, and the third dispatchable robot is determined as a target robot.
[0024] Furthermore, before obtaining the to-be-delivered task information corresponding to the to-be-delivered task and the loading status information of each robot, it also includes:
[0025] A mapping relationship between the type of the delivery task and the type of storage cavity included in the delivery box is determined and stored.
[0026] In a second aspect, an embodiment of the present invention further provides a robot scheduling device, the device comprising:
[0027] An acquisition module is used to obtain the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot;
[0028] A determination module, used to determine a target robot according to the information of the task to be delivered and the loading status information of each of the robots;
[0029] The sending module is used to send a scheduling instruction to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction.
[0030] In a third aspect, an embodiment of the present invention further provides a scheduling device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a robot scheduling method as described in any one of the embodiments of the present invention is implemented.
[0031] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a robot scheduling method as described in any one of the embodiments of the present invention.
[0032] The embodiment of the present invention obtains the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot; determines the target robot according to the task information to be delivered and the loading status information of each robot; sends a scheduling instruction to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction, thereby solving the problem that robots of the same type cannot meet various delivery needs and have low utilization rate, and realizes scheduling robots loaded with corresponding storage box types to perform the task to be delivered according to the type of delivery task, thereby meeting the requirements of different delivery tasks, improving the utilization rate of robots and saving investment costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0034] Figure 1 is a flow chart of a robot scheduling method in Embodiment 1 of the present invention;
[0035] Figure 2 is a flow chart of a robot scheduling method in Embodiment 2 of the present invention;
[0036] Figure 2a is a flow chart of another robot scheduling method in Embodiment 2 of the present invention;
[0037] Figure 3 is a schematic structural diagram of a robot scheduling device in Embodiment 3 of the present invention;
[0038] Figure 4 It is a structural diagram of a scheduling device in Embodiment 4 of the present invention. DETAILED DESCRIPTION
[0039] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only parts related to the present invention, rather than all structures, are shown in the accompanying drawings.
[0040] It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings. At the same time, in the description of the present invention, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0041] Embodiment 1
[0042] Figure 1 This is a flow chart of a robot scheduling method provided in the first embodiment of the present invention. This embodiment is applicable to the case of scheduling robots that can carry different types of delivery boxes. The method can be executed by the robot scheduling device in the embodiment of the present invention, and the device can be implemented in software and / or hardware. The device can be integrated in the scheduling device. The scheduling device can be considered as a device that implements robot scheduling.
[0043] In an embodiment of the present invention, the robot can be matched with multiple types of delivery boxes, and the delivery box includes: at least one type of storage cavity.
[0044] For example, the delivery box may include one box or multiple boxes, each box serving as a storage cavity, and each box may contain items of the same type or items of different types. Alternatively, the delivery box may be divided into multiple areas, each area serving as a storage cavity, and each area may contain items of the same type or items of different types.
[0045] In a specific example, taking medical delivery as an example, each robot can be matched with multiple types of delivery boxes, which may include: a delivery box composed of at least one storage cavity for delivering medical waste, a delivery box composed of at least one storage cavity for delivering medicines and surgical tools, a delivery box composed of at least one storage cavity for delivering documents, a delivery box composed of at least one storage cavity for delivering test tubes such as blood samples, a delivery box composed of at least one storage cavity for delivering medicines or blood that need to be refrigerated, and a mixed delivery box composed of different types of storage cavities. The mixed delivery box may include: a delivery box composed of any one or more storage cavities among the storage cavities for delivering medicines and surgical tools, the storage cavities for delivering documents, the storage cavities for delivering test tubes such as blood samples, and the storage cavities for delivering medicines or blood that need to be refrigerated. For example, it may be a delivery box composed of three storage cavities for delivering test tubes such as blood samples; or it may be a delivery box composed of two storage cavities for delivering medicines and surgical tools and one storage cavity for delivering documents.
[0046] It should be noted that each delivery box or storage cavity can be designed according to the type of items that need to be placed. For example, blood sample tubes need to remain stable during delivery, so the storage cavity or delivery box for delivering blood sample tubes can have a built-in protective structure to prevent the blood sample tubes from shaking and causing hemolysis. Refrigerated medicines or blood have requirements for the temperature of the delivery box during delivery, so the storage cavity or delivery box for refrigerated medicines or blood can have a refrigeration function.
[0047] In medical distribution, medicines, blood samples, surgical instruments, etc. need to be kept in a sterile environment in the delivery boxes, and these items are usually sent to operating rooms, laboratories, or wards, while medical waste is generally transported to designated waste disposal sites. Therefore, the delivery boxes for medical waste are generally used separately.
[0048] like Figure 1 As shown, the method specifically comprises the following steps:
[0049] S110, obtaining the to-be-delivered task information corresponding to the to-be-delivered task and the mounting status information of each robot.
[0050] The delivery task to be delivered may be a delivery task that needs to be performed by the robot, and the delivery task information may be basic information contained in the delivery task, such as the content of the delivery task, the type of the delivery task, the departure point information and the destination information of the delivery task. The robot's carrying status information may be indication information indicating whether the robot is carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box.
[0051] The method of obtaining the task information corresponding to the task to be delivered is not limited. For example, a medical staff with authority initiates the task to be delivered through a terminal device and configures the task information to be delivered. The terminal device sends the task information to the background device, and the background device sends the received task information to the scheduling device. The scheduling device is a device that automatically schedules each robot according to a preset scheduling strategy, such as a control console.
[0052] The method of obtaining the carrying status information of each robot is not limited. For example, the robot determines the carrying status information by using a sensor on the carrying delivery box to identify whether the delivery box is carried. If the delivery box is carried, the type of storage cavity contained in the delivery box is detected by the sensor and indication information is formed. The dispatching device obtains the carrying status information of the robot by sending a status request instruction to each robot after receiving the task information to be delivered, so as to obtain the carrying status information of each robot; or the dispatching device receives the carrying status information sent by each robot in real time.
[0053] S120: Determine a target robot according to the information of the task to be delivered and the loading status information of each of the robots.
[0054] The target robot can be represented as a robot used to perform the task to be delivered. A task is usually performed by only one robot, so there is only one target robot.
[0055] In a specific example, a target robot is determined from robots that meet a first preset condition, wherein the first preset condition is that the delivery box is the target delivery box, and the type of storage cavity contained in the target delivery box matches the type of the task to be delivered; if all robots do not meet the first preset condition, a dispatchable robot is determined from robots that meet a second preset condition, wherein the second preset condition is that the time for the robot to arrive at the departure point of the task to be delivered is the shortest, the delivery box carried by the dispatchable robot is replaced with the target delivery box, the type of storage cavity contained in the target delivery box matches the type of the task to be delivered, and the dispatchable robot is determined as the target robot.
[0056] In a specific example, a robot equipped with a delivery box is determined as a first robot, and a robot not equipped with a delivery box is determined as a second robot; a target robot is determined from the first robots that meet a first preset condition, wherein the first preset condition is that the delivery box is a target delivery box, and the type of storage cavity contained in the target delivery box matches the type of the task to be delivered; if none of the first robots meet the first preset condition, a dispatchable robot is determined from the second robots, and the dispatchable robot is equipped with a target delivery box, and the type of storage cavity contained in the target delivery box matches the type of the task to be delivered, and the dispatchable robot is determined as the target robot; if each of the robots is equipped with a delivery box and does not meet the first preset condition, a dispatchable robot is determined from the first robots that meet the second preset condition, wherein the second preset condition is that the time for the robot to arrive at the departure point of the task to be delivered is the shortest, the delivery box carried by the dispatchable robot is replaced with the target delivery box, and the dispatchable robot is determined as the target robot.
[0057] S130, sending a scheduling instruction to the target robot, so that the target robot performs the task to be delivered based on the scheduling instruction.
[0058] The dispatch instruction can be considered as an instruction for dispatching a robot, and the dispatch instruction can carry the identification code of the target robot and the information of the task to be delivered. The information of the task to be delivered can include the content of the task to be delivered, the type of the task to be delivered, the departure point information and the destination information of the task to be delivered.
[0059] Exemplarily, the scheduling device sends a scheduling instruction to the target robot according to the identification code of the target robot carried in the scheduling instruction, so that the target robot performs the task to be delivered based on the information of the task to be delivered carried in the scheduling instruction. After receiving the scheduling instruction carrying the identification code of the target robot, the target robot matches the identification code of the target robot with its own identification code, and receives the scheduling task if the matching result is consistent.
[0060] The technical solution of this embodiment is to obtain the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot; determine the target robot according to the task information to be delivered and the loading status information of each robot; send a scheduling instruction to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction, and can schedule robots loaded with corresponding storage box types to perform the task to be delivered according to the type of delivery task, thereby meeting the requirements of different delivery tasks, improving the utilization rate of robots, and saving investment costs.
[0061] Embodiment 2
[0062] Figure 2This is a flow chart of a robot scheduling method in Embodiment 2 of the present invention. This embodiment is optimized based on the above embodiment. In this embodiment, the carrying status information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the information on the task to be delivered includes the type of the task to be delivered and the departure place information of the task to be delivered. Correspondingly, according to the information of the task to be delivered and the carrying status information of each of the robots, the target robot is determined, including: according to the type of the task to be delivered, querying the mapping table between the type of the delivery task and the type of the storage cavity contained in the delivery box, determining the target delivery box, the type of the storage cavity contained in the target delivery box matches the type of the task to be delivered; determining the target robot from the first robots that meet the first preset condition, the first robot is a robot carrying a delivery box, and the first preset condition is that the delivery box is the target delivery box; if none of the first robots meet the first preset condition, then determining the target robot from the second robot, the second robot is a robot not carrying a delivery box; if each of the robots is equipped with a delivery box and does not meet the first preset condition, then determining the first robot that meets the second preset condition as the first dispatchable robot; replacing the delivery box carried by the first dispatchable robot with the target delivery box, and determining the first dispatchable robot as the target robot; wherein the second preset condition is that the time for the robot to arrive at the departure place of the task to be delivered is the shortest, and the time to arrive at the departure place of the task to be delivered is determined based on the departure place information.
[0063] like Figure 2 As shown, the method of this embodiment specifically includes the following steps:
[0064] S210, obtaining the task information to be delivered corresponding to the task to be delivered and the carrying status information of each robot; the carrying status information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the task information to be delivered includes the type of the task to be delivered and the departure place information of the task to be delivered.
[0065] S220, querying a mapping table between the type of the delivery task and the type of the storage cavity included in the delivery box according to the type of the delivery task to be delivered, and determining a target delivery box, wherein the type of the storage cavity included in the target delivery box matches the type of the delivery task to be delivered.
[0066] The target delivery box may be a delivery box that matches the type of the task to be delivered.
[0067] In a specific example, the task to be delivered may include one type of task. For example, if the type of the task to be delivered is a blood sample tube, the target delivery box may be a delivery box consisting of a storage cavity for delivering blood sample tubes, or a delivery box consisting of a storage cavity for delivering blood sample tubes and a storage cavity for delivering documents; or a delivery box consisting of a storage cavity for delivering blood sample tubes and a storage cavity for delivering medicines.
[0068] In a specific example, the tasks to be delivered may include tasks of multiple types. For example, if the types of tasks to be delivered are documents and medicines, the target delivery box may be a delivery box consisting of a storage cavity for delivering documents and a storage cavity for delivering medicines; or the target delivery box may be a delivery box consisting of a storage cavity for delivering documents, a storage cavity for delivering medicines, and a storage cavity for delivering blood sample tubes.
[0069] Optionally, before obtaining the to-be-delivered task information corresponding to the to-be-delivered task and the loading status information of each robot, the following is further included:
[0070] A mapping relationship between the type of the delivery task and the type of storage cavity included in the delivery box is determined and stored.
[0071] The mapping relationship between the type of the delivery task and the type of the storage cavity included in the delivery box may be one-to-one or one-to-many.
[0072] Exemplarily, a mapping relationship between the type of delivery task and the type of storage cavity contained in the delivery box is determined, and the mapping relationship and all types of delivery boxes are stored so that after the background device receives the type of delivery task and the type of storage cavity contained in the delivery box carried by each robot, it can query the mapping relationship to determine the target delivery box, judge whether the delivery box carried by each robot is the target delivery box, or replace the delivery box currently carried by the robot with the target delivery box, and then determine the target robot.
[0073] S230, determining a target robot from the first robots that meet the first preset condition, and executing S260. .
[0074] Among them, the first robot is a robot equipped with a delivery box; the first preset condition is that the delivery box is a target delivery box, and the type of storage cavity contained in the target delivery box matches the type of the task to be delivered.
[0075] Specifically, the type of the storage cavity included in the target delivery box matches the type of the task to be delivered, which means that the type of at least one storage cavity included in the target delivery box is the same as the type of the task to be delivered.
[0076] In a specific example, if the type of task to be delivered is a blood sample test tube, then from the first robot equipped with a delivery box, a robot whose delivery box only includes a storage cavity for delivering blood sample test tubes is preferentially selected as a dispatchable robot, and secondly, a robot whose delivery box includes a storage cavity for delivering blood sample test tubes and other types of storage cavities can also be selected as a dispatchable robot. If there is only one dispatchable robot, it is determined as the target robot; if the number of the first dispatchable robots is greater than one, a robot is determined from the dispatchable robots as a target robot.
[0077] In another specific example, if the type of the task to be delivered is documents and medicines, then the robot whose delivery box includes a storage cavity for delivering documents and a storage cavity for delivering medicines and surgical tools is preferentially selected from the first robot carrying the delivery box as the dispatchable robot. If there is only one dispatchable robot, it is determined as the target robot; if the number of dispatchable robots is greater than one, then one robot is selected from the dispatchable robots as the target robot.
[0078] In the above specific example, a method of determining a robot from the dispatchable robots as a target robot is to select any robot from the dispatchable robots as a target robot, or to select a robot with the shortest time to reach the departure point of the task to be delivered from the dispatchable robots as the target robot. The time for the robot to arrive at the departure point of the task to be delivered is determined based on the departure point information of the task to be delivered and the current position information of the robot.
[0079] S240: If all the first robots do not satisfy the first preset condition, determine a target robot from the second robots and execute S260.
[0080] Among them, the second robot is a robot without a delivery box.
[0081] Specifically, if none of the first robots meets the first preset condition, indicating that no delivery box carried by the robot can match the type of the task to be delivered, further consideration is given to whether there is a robot that does not carry any delivery box. If there is a robot that does not carry any delivery box, the target robot is determined from the robots, and the target delivery box is loaded on the target robot to execute the task to be delivered.
[0082] It should be noted that the robot will not unload the delivery box it is carrying after completing the task. However, due to the strict requirements of medical delivery on environmental hygiene, the delivery box needs to be disinfected regularly, or due to reasons such as later maintenance, the delivery box carried by the robot will be unloaded.
[0083] If the delivery boxes carried by each robot do not match the type of the delivery task to be delivered, the target robot will be determined from the robots that are not equipped with the delivery box. The target delivery box can be directly loaded onto the target robot to execute the delivery task, reducing the operation of unloading the delivery box from the robot and then carrying the target delivery box.
[0084] S250, if each of the robots is equipped with a delivery box and does not meet the first preset condition, the first robot that meets the second preset condition is determined as the first dispatchable robot; the delivery box carried by the first dispatchable robot is replaced with a target delivery box, and the first dispatchable robot is determined as the target robot, and S260 is executed.
[0085] Among them, the second preset condition is that the time for the robot to arrive at the departure place of the task to be delivered is the shortest, and the time for arriving at the departure place of the task to be delivered is determined based on the departure place information.
[0086] Exemplarily, a method for determining the time when the robot arrives at the departure point of the task to be delivered can be to determine a planned path based on the departure point information of the task to be delivered, the current location information of the robot, and a system map of the delivery area, and determine the time when the robot arrives at the departure point of the task to be delivered based on the planned path and the speed information of the robot.
[0087] The first robot that takes the shortest time to reach the departure point of the delivery task is determined as the first dispatchable robot, and the delivery box carried by the first dispatchable robot is replaced with a target delivery box that matches the delivery task to be delivered, and is determined as the target robot. This can improve the delivery efficiency of the robot while ensuring that the delivery box carried by the robot meets the delivery requirements of different task types.
[0088] S260: Send a scheduling instruction to the target robot, so that the target robot executes the task to be delivered based on the scheduling instruction.
[0089] The technical solution of this embodiment is to obtain the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot; determine the target robot from the first robots that meet the first preset condition, the first robot is a robot equipped with a delivery box, the first preset condition is that the delivery box is a target delivery box, and the type of storage cavity contained in the target delivery box matches the type of the task to be delivered; if all of the first robots do not meet the first preset condition, determine the target robot from the second robot, the second robot is a robot that does not carry a delivery box; if all of the robots are equipped with a delivery box and do not meet the first preset condition, determine the target robot from the first robot, send a scheduling instruction to the target robot, so that the target robot performs the task to be delivered based on the scheduling instruction, and can schedule robots loaded with corresponding storage box types to perform the task to be delivered, so that the robots meet the needs of different types of delivery tasks, improve the utilization rate of the robots, and save investment costs.
[0090] Based on the above embodiment, optionally, determining the target robot from the first robots that meet the first preset condition includes:
[0091] Determine a first robot that meets a first preset condition as a second dispatchable robot;
[0092] If the number of the second dispatchable robot is one, determining the first dispatchable robot as the target robot;
[0093] If the number of the second dispatchable robots is greater than one, a second dispatchable robot that meets the second preset condition is determined as the target robot.
[0094] The second dispatchable robot refers to the first robot that meets the first preset condition, that is, the delivery box carried by the second dispatchable robot includes a storage cavity corresponding to the type of the task to be delivered.
[0095] Specifically, if there are multiple second dispatchable robots, the time for each second dispatchable robot to arrive at the departure point of the task to be delivered is determined, and the second dispatchable robot with the shortest arrival time at the departure point of the task to be delivered is determined as the target robot to improve the delivery efficiency of the robots.
[0096] Optionally, determining the target robot from the second robot includes:
[0097] If the number of the second robot is one, determining the second robot as a third dispatchable robot;
[0098] If the number of the second robots is greater than one, determining the second robot that meets the second preset condition as the third dispatchable robot;
[0099] The third dispatchable robot is loaded with a target delivery box, and the third dispatchable robot is determined as a target robot.
[0100] Specifically, if there are multiple second robots, the time for each second robot to arrive at the departure point of the task to be delivered is determined, and the second robot with the shortest time to arrive at the departure point of the task to be delivered is determined as the third dispatchable robot to improve the delivery efficiency of the robots. The second dispatching robot is loaded with a target delivery box, and the third dispatchable robot is determined as the target robot, so that the delivery box carried by the target robot can match the type of the task to be delivered, so as to meet the delivery requirements of different task types.
[0101] like Figure 2a As shown, the specific steps of the embodiment of the present invention are: S1: the background device obtains the task to be delivered and the loading status information of the robot.
[0102] S2: Determine the target delivery box according to the type of the delivery task.
[0103] S3: Determine whether there is a robot carrying the target delivery box. If yes, execute S4. If no, execute S5.
[0104] S4: Determine the first robot with the shortest arrival time at the departure location of the task to be delivered from the first robots carrying the target delivery box, and execute S8.
[0105] S5: Determine whether there is a second robot without a delivery box. If yes, execute S6; if no, execute S7.
[0106] S6: Determine whether the number of the second robot without the delivery box is 1. If yes, execute S8; if no, execute S61: determine the second robot with the shortest arrival time at the departure point of the task to be delivered, and S62: replace the delivered box with the target delivery box.
[0107] S7: Determine whether the number of first robots carrying a delivery box that is not a target delivery box is 1. If yes, execute S8. If no, execute S71: determine the first robot that takes the shortest time to reach the departure point of the task to be delivered, and S72: replace the carried delivery box with the target delivery box.
[0108] S8: Determine the target robot.
[0109] S9: Sending a scheduling instruction to the target robot so that the target robot executes the task to be assigned.
[0110] Embodiment 3
[0111] Figure 3This is a schematic diagram of the structure of a robot scheduling device provided in the third embodiment of the present invention. This embodiment can be applied to the case of scheduling robots that can carry different types of delivery boxes. The device can be implemented in software and / or hardware. The device can be integrated in any device that provides the function of robot scheduling, such as Figure 3 As shown, the robot scheduling device specifically includes: an acquisition module 310, a determination module 320 and a sending module 330.
[0112] The acquisition module 310 is used to acquire the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot;
[0113] A determination module 320, configured to determine a target robot according to the to-be-delivered task information and the loading status information of each of the robots;
[0114] The sending module 330 is used to send a scheduling instruction to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction.
[0115] Optionally, the carrying status information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the information on the task to be delivered includes the type of the task to be delivered and the departure place information of the task to be delivered.
[0116] Optionally, the determining module 320 includes:
[0117] A first determining unit is used to query a mapping table between the type of the delivery task and the type of the storage cavity included in the delivery box according to the type of the delivery task to be delivered, and determine a target delivery box, wherein the type of the storage cavity included in the target delivery box matches the type of the delivery task to be delivered;
[0118] A second determining unit is used to determine a target robot from first robots that meet a first preset condition, wherein the first robot is a robot carrying a delivery box;
[0119] a third determining unit, configured to determine a target robot from among the second robots if none of the first robots satisfies the first preset condition, the second robot being a robot not carrying a delivery box;
[0120] a fourth determining unit, configured to, if all the robots are equipped with a delivery box and the first preset condition is not satisfied, determine the first robot that meets the second preset condition as the first dispatchable robot; replace the delivery box carried by the first dispatchable robot with a target delivery box, and determine the first dispatchable robot as the target robot;
[0121] Among them, the first preset condition is that the delivery box is the target delivery box; the second preset condition is that the time for the robot to arrive at the departure point of the task to be delivered is the shortest, and the time for arriving at the departure point of the task to be delivered is determined based on the departure point information.
[0122] Optionally, the first determining unit is specifically configured to:
[0123] Determine a first robot that meets a first preset condition as a second dispatchable robot;
[0124] If the number of the first dispatchable robot is one, determining the second dispatchable robot as the target robot;
[0125] If the number of the first dispatchable robots is greater than one, a second dispatchable robot that meets the second preset condition is determined as the target robot.
[0126] Optionally, the second determining unit is specifically configured to:
[0127] If the number of the second robot is one, determining the second robot as a third dispatchable robot;
[0128] If the number of the second robots is greater than one, determining the second robot that meets the second preset condition as the third dispatchable robot;
[0129] The third dispatchable robot is loaded with a target delivery box, and the third dispatchable robot is determined as a target robot.
[0130] Optionally, also include:
[0131] The storage module is used to determine and store the mapping relationship between the type of the delivery task and the type of storage cavity contained in the delivery box before obtaining the to-be-delivered task information corresponding to the to-be-delivered task and the carrying status information of each robot.
[0132] The above-mentioned product can execute the robot scheduling method provided by any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0133] Embodiment 4
[0134] Figure 4 This is a schematic diagram of the structure of a scheduling device in Embodiment 4 of the present invention. Figure 4 A block diagram of an exemplary scheduling device 12 suitable for use in implementing embodiments of the present invention is shown. Figure 4 The scheduling device 12 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.
[0135] like Figure 4As shown, the scheduling device 12 is in the form of a general purpose computing device. The components of the scheduling device 12 may include, but are not limited to: one or more processors or processors 16, a system memory 28, and a bus 18 connecting different system components (including the system memory 28 and the processor 16).
[0136] Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or a local bus using any of a variety of bus architectures. By way of example, these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
[0137] The scheduling device 12 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by the scheduling device 12, including volatile and non-volatile media, removable and non-removable media.
[0138] The system memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The scheduling device 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 34 may be used to read and write non-removable, non-volatile magnetic media ( Figure 4 not shown, usually called a "hard drive"). Although Figure 4 Not shown in the figure, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, a DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to the bus 18 via one or more data medium interfaces. The memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present invention.
[0139] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in the memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. The program modules 42 generally perform the functions and / or methods of the embodiments described herein.
[0140] The scheduling device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), and may also communicate with one or more devices that enable a user to interact with the scheduling device 12, and / or communicate with any device that enables the scheduling device 12 to communicate with one or more other computing devices (e.g., network card, modem, etc.). Such communication may be performed through an input / output (I / O) interface 22. In addition, the scheduling device 12 in this embodiment, the display 24 does not exist as an independent individual, but is embedded in the mirror surface. When the display surface of the display 24 is not displayed, the display surface of the display 24 is visually integrated with the mirror surface. In addition, the scheduling device 12 may also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN) and / or public network, such as the Internet) through a network adapter 20. As shown in the figure, the network adapter 20 communicates with other modules of the scheduling device 12 through a bus 18. It should be understood that although not shown in the figure, other hardware and / or software modules can be used in conjunction with the scheduling device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0141] The processor 16 executes various functional applications and data processing by running the program stored in the system memory 28, for example, implementing the robot scheduling method provided in the embodiment of the present invention: obtaining the task information to be delivered corresponding to the task to be delivered and the mounting status information of each robot; determining the target robot according to the task information to be delivered and the mounting status information of each robot; sending a scheduling instruction to the target robot so that the target robot executes the task to be delivered based on the scheduling instruction.
[0142] Embodiment 5
[0143] Embodiment 5 of the present invention provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the robot scheduling method provided in all the embodiments of the invention of this application is implemented: obtaining the task information to be delivered corresponding to the task to be delivered and the carrying status information of each robot; determining the target robot according to the task information to be delivered and the carrying status information of each robot; and sending a scheduling instruction to the target robot so that the target robot performs the task to be delivered based on the scheduling instruction.
[0144] Any combination of one or more computer-readable media can be used. Computer-readable media can be computer-readable signal media or computer-readable storage media. Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or devices, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: electrical connections with one or more wires, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this document, computer-readable storage media can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.
[0145] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0146] The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0147] Computer program code for performing the operation of the present invention may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0148] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A robot scheduling method, characterized in that: The robot is compatible with a variety of delivery boxes, the delivery boxes include: at least one type of storage cavity, the method includes: Obtain the task information to be delivered and the loading status information of each robot corresponding to the task to be delivered; Determining a target robot according to the information of the task to be delivered and the carrying status information of each of the robots; Sending a dispatch instruction to the target robot so that the target robot performs the task to be delivered based on the dispatch instruction; The carrying state information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the information of the task to be delivered includes: the type of the task to be delivered and the departure place information of the task to be delivered; Determining a target robot according to the information of the task to be delivered and the carrying state information of each robot includes: According to the type of the task to be delivered, a mapping table between the type of the delivery task and the type of the storage cavity contained in the delivery box is searched to determine a target delivery box, wherein the type of the storage cavity contained in the target delivery box matches the type of the task to be delivered; Determine a target robot from first robots that meet a first preset condition, wherein the first robot is a robot carrying a delivery box, and the first preset condition is that the delivery box is a target delivery box; Determining a target robot according to the to-be-delivered task information and the carrying state information of each of the robots, further comprising: If all of the first robots do not meet the first preset condition, a target robot is determined from the second robots, where the second robot is a robot that does not carry a delivery box; If all the robots are equipped with a delivery box and the first preset condition is not met, the first robot that meets the second preset condition is determined as the first dispatchable robot; the delivery box carried by the first dispatchable robot is replaced with a target delivery box, and the first dispatchable robot is determined as the target robot; Among them, the second preset condition is that the time for the robot to arrive at the departure place of the task to be delivered is the shortest, and the time for arriving at the departure place of the task to be delivered is determined based on the departure place information.
2. The method according to claim 1, characterized in that Determining a target robot from first robots that meet a first preset condition includes: Determine a first robot that meets a first preset condition as a second dispatchable robot; If the number of the first dispatchable robot is one, determining the second dispatchable robot as the target robot; If the number of the first dispatchable robots is greater than one, a second dispatchable robot that meets the second preset condition is determined as the target robot.
3. The method according to claim 1, characterized in that Determining a target robot from a second robot includes: If the number of the second robot is one, determining the second robot as a third dispatchable robot; If the number of the second robots is greater than one, determining the second robot that meets the second preset condition as the third dispatchable robot; The third dispatchable robot is loaded with a target delivery box, and the third dispatchable robot is determined as a target robot.
4. The method according to claim 1, characterized in that: Before obtaining the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot, it also includes: A mapping relationship between the type of the delivery task and the type of storage cavity included in the delivery box is determined and stored.
5. A robot scheduling device, characterized in that: include: An acquisition module is used to obtain the task information to be delivered corresponding to the task to be delivered and the loading status information of each robot; A determination module, used to determine a target robot according to the information of the task to be delivered and the loading status information of each of the robots; The carrying state information of the robot includes: indication information that the robot is not carrying a delivery box, or indication information of the type of storage cavity contained in the delivery box carried by the robot; the information on the task to be delivered includes the type of the task to be delivered and the departure place information of the task to be delivered; A sending module, used for sending a dispatch instruction to the target robot, so that the target robot performs the task to be delivered based on the dispatch instruction; The determining module comprises: A first determining unit is used to query a mapping table between the type of the delivery task and the type of the storage cavity included in the delivery box according to the type of the delivery task to be delivered, and determine a target delivery box, wherein the type of the storage cavity included in the target delivery box matches the type of the delivery task to be delivered; A second determining unit is used to determine a target robot from first robots that meet a first preset condition, wherein the first robot is a robot carrying a delivery box; The determining module further includes: a third determining unit, configured to determine a target robot from among the second robots if none of the first robots satisfies the first preset condition, the second robot being a robot not carrying a delivery box; a fourth determining unit, configured to, if all the robots are equipped with a delivery box and the first preset condition is not satisfied, determine the first robot that meets the second preset condition as the first dispatchable robot; replace the delivery box carried by the first dispatchable robot with a target delivery box, and determine the first dispatchable robot as the target robot; Among them, the first preset condition is that the delivery box is the target delivery box; the second preset condition is that the time for the robot to arrive at the departure point of the task to be delivered is the shortest, and the time for arriving at the departure point of the task to be delivered is determined based on the departure point information.
6. A scheduling device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the robot scheduling method as described in any one of claims 1-4 is implemented.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the robot scheduling method as described in any one of claims 1 to 4 is implemented.
Citation Information
Patent Citations
Robot distribution task scheduling method and system
CN112183932A
Method and device for dispatching service robots
US20190176337A1