Split robot scheduling method, device and equipment and medium
By obtaining and adjusting the task queue of the split robot, it determines and prioritizes high-priority tasks, solves the task scheduling problem of the split robot under busy conditions, and improves task execution efficiency.
Patent Information
- Application Number
- CN202310884372.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-18
- Publication Date
- 2025-01-21
AI Technical Summary
When split robots are busy, how to reasonably schedule split robots within a reasonable time range to complete multiple tasks of different priorities and improve work efficiency.
By obtaining the current cleaning task in the task queue of the split robot, determine the first task with a priority greater than the current cleaning task, and adjust the task execution order of the split robot according to the task type and expected completion time of the first task.
It is possible to prioritize high-priority tasks without affecting the current cleaning task, thereby improving the task execution efficiency of the split robot.
Smart Images

Figure CN119326334A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of artificial intelligence technology, and in particular to a scheduling method, device, equipment and medium for a split robot. Background Art
[0002] Nowadays, human life is inseparable from service robots. It not only liberates human hands, but also brings a good experience to users to a certain extent, avoiding errors when manually completing corresponding tasks. For example, within a fixed time period, the frequency of service robots being used in a single scene has greatly increased. When the manual service capacity is insufficient, calling a service robot to perform tasks can improve efficiency. Among them, a split robot is a technical robot that can automatically perform cleaning tasks, such as cleaning the floor, wiping windows, etc. With the continuous development of artificial intelligence and automation technology, the application field of split robots is becoming more and more extensive. At present, the split robots circulating on the market have different functions, and different types of split robots will have some disadvantages according to different performance requirements. For hotel scenes, split robots are usually used to replace the split robots to complete the cleaning function of the area in the environment. However, during the cleaning process, the split robot often encounters higher-value tasks that require its chassis to be requisitioned for execution, then there is a task conflict and the split robot is busy. Therefore, under the busy condition of the split robot, how to schedule the split robot to complete multiple tasks of different priorities within a reasonable time range and improve work efficiency has become an urgent problem to be solved. Summary of the invention
[0003] The present invention provides a split robot scheduling method, device, equipment and medium, which solves the problem of making the best use of the functions of the split robot to complete the current cleaning task within a reasonable time while also executing high-priority tasks in a multi-tasking situation, thereby improving task completion efficiency.
[0004] According to a first aspect of the present invention, a scheduling method for a split robot is provided, the method comprising:
[0005] Get the current cleaning task in the task queue of the split robot;
[0006] Determine a first task in the task queue having a priority greater than the current cleaning task;
[0007] The task execution order of the split robots is adjusted according to the task type and estimated completion time of the first task.
[0008] According to a second aspect of the present invention, there is provided a scheduling device for a split robot, the device comprising:
[0009] An acquisition module is configured to acquire a current cleaning task in a task queue of the split robot;
[0010] A determination module, configured to determine a first task in the task queue having a priority greater than the current cleaning task;
[0011] The adjustment module is configured to adjust the task execution order of the split robot according to the task type and expected completion time of the first task.
[0012] According to a third aspect of the present invention, there is provided an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor implements the scheduling method for a split robot as described in any embodiment of the present invention.
[0013] According to a fourth aspect of the present invention, there is provided a computer-readable storage medium, wherein the computer instructions are used to cause the computer to execute the split robot scheduling method as described in any embodiment of the present invention.
[0014] The present invention discloses a scheduling method, device, equipment and medium for a split robot. The method comprises: obtaining the current cleaning task in the task queue of the split robot; determining the first task in the task queue with a priority greater than the current cleaning task; and adjusting the task execution order of the split robot according to the task type and the estimated completion time of the first task. According to the embodiment of the present invention, the current cleaning tasks in the task queue are reordered according to the insertion of the first task with a high priority; and by judging the estimated completion time set for each current cleaning task, the resource information of the split robot is integrated, and the split robot is scheduled to perform the corresponding task according to the cleaning demand, which greatly improves the task execution efficiency of the split robot.
[0015] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0017] Figure 1It is a schematic diagram of an application scenario in which a scheduling method for a split robot according to an embodiment of the present invention can be implemented;
[0018] Figure 2 is a schematic flow chart of a split robot scheduling method provided according to an embodiment of the present invention;
[0019] Figure 3 is a structural schematic diagram of a scheduling device for a split robot provided according to an embodiment of the present invention;
[0020] Figure 4 is a schematic structural diagram of a determination module in a scheduling device for a split robot provided in an embodiment of the present invention;
[0021] Figure 5 is a structural schematic diagram of a first determination unit in a scheduling device of a split robot provided according to an embodiment of the present invention;
[0022] Figure 6 is a structural schematic diagram of a second determination unit in a scheduling device for a split robot provided according to an embodiment of the present invention;
[0023] Figure 7 is a structural schematic diagram of an adjustment module in a scheduling device of a split robot provided according to an embodiment of the present invention;
[0024] Figure 8 It is a block diagram of an electronic device used to implement a split robot scheduling method according to an embodiment of the present invention. DETAILED DESCRIPTION
[0025] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.
[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0027] According to an embodiment of the present application, a schematic diagram 100 of an application scenario of a scheduling method for a split robot is provided. Figure 1 As shown, the application scenario includes: cloud 110, server 120, split robot 130 and task queue 140. The task queue 140 includes: current cleaning task 141 and first task 142. The split robot 130 communicates data with the cloud 110 through the server 120, and the cloud 110 can obtain the task queue 140 of the split robot 130. Figure 1 In the application scenario, by obtaining the current cleaning task 141 in the task queue 140 of the split robot 130; determining the first task 142 in the task queue 140 with a priority greater than the current cleaning task 141; and adjusting the task execution order of the split robot 130 according to the task type and the estimated completion time of the first task 142. The split robot 130 is scheduled to perform the corresponding task according to the cleaning demand, which greatly improves the task execution efficiency of the split robot 130.
[0028] Those skilled in the art will appreciate that the above Figure 1 What is shown is only an example based on the application scenario of the present invention, and is not limiting.
[0029] Embodiment 1
[0030] According to an embodiment of the present application, a method for scheduling a split robot is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here. Figure 2 As shown, the scheduling method of the split robot includes the following steps: S210, S220 and S230.
[0031] S210, obtaining the current cleaning task in the task queue of the split robot.
[0032] The split robot includes a chassis and a cleaning cabin, the chassis can be separated from the cleaning cabin to perform other tasks, and when the chassis and the cleaning cabin are combined, the split robot can complete the cleaning task. The task queue includes one or more current cleaning tasks, which are created by the cloud according to time sequence and enter the task queue in time sequence.
[0033] S220: Determine a first task in the task queue whose priority is greater than the current cleaning task.
[0034] Optionally, determining the first task in the task queue whose priority is greater than the current cleaning task includes: querying whether there is a high-priority task inserted in the task queue; if the high-priority task is not inserted, continuing to execute the current cleaning task; if the high-priority task is inserted, determining the first task according to a first judgment rule.
[0035] Furthermore, if the high priority task does not exist, the current cleaning task continues to be executed, including: obtaining the number of current cleaning tasks in the task queue, the number being greater than or equal to 1; and executing the cleaning tasks to be completed in sequence according to the time sequence in which the current cleaning tasks enter the task queue.
[0036] Optionally, after continuing to execute the current cleaning task, it also includes: controlling the split robot to execute the ending task of returning to the charging pile.
[0037] Optionally, if the high priority task is inserted, the first task is determined according to a first judgment rule, including: controlling the split robot to execute the first task when the conditions of the first judgment rule are met; controlling the split robot to terminate the current cleaning task when the conditions of the first judgment rule are not met, and recording the current area and coordinate position of the split robot.
[0038] Specifically, during the process of the split robot performing the cleaning task, a map record of the cleaning path is stored. The first judgment rule includes: if the first task is a regular task, according to the regular tasks whose completion time is not within the first time threshold, determining the first task corresponding to the first area that can be completed within the second time threshold, and the first time threshold is greater than the second time threshold; if the first task is a non-regular task, determining the first task corresponding to the first area that can be completed within the second time threshold.
[0039] Exemplarily, the first time threshold is 5 minutes, and the second time threshold is 3 minutes. The first threshold and the second threshold are set according to the configuration of the split robot by the administrator. When a high-priority first task is inserted into the task queue, it is determined whether the first task is a regular task. On the one hand, based on the first task determined as a regular task, it is determined whether the estimated completion time of the first task is within 5 minutes. If it can be completed within 5 minutes, the split robot is scheduled to perform the task of returning to the charging pile. If the estimated completion time is not within 5 minutes, it is further determined whether the estimated completion time of the first task is within 3 minutes. If so, after the split robot is scheduled to complete the first task, it is marked that the area corresponding to the first task has completed cleaning; if not, the first task is paused, and the area and coordinate position of the split robot are recorded. On the other hand, when the first task is determined to be a non-periodic task, it is directly determined whether the estimated completion time of the first task is within 3 minutes, that is, whether the estimated completion time is within the second time threshold; if so, the split robot is scheduled to complete the first task and mark the area corresponding to the first task as completed; if not, the first task is paused, and the area and coordinate position of the split robot are recorded. It is worth noting that after the first task is paused, the split robot is controlled to return to the charging pile, replace equipment, perform cabin change operations, and further execute other tasks in the task list.
[0040] Furthermore, when the split robot does not meet the conditions of the first judgment rule, it also includes: sending a first instruction to the split robot to return to the charging pile; controlling the split robot to replace equipment at the charging pile according to the first instruction, wherein the equipment includes a replacement compartment of the storage compartment of the split robot; and allowing the split robot to continue to perform the remaining cleaning tasks to be completed after completing the equipment replacement operation.
[0041] Optionally, when the remaining cleaning tasks to be completed are completed, it is determined whether the current time is within the threshold range of the regular task time period of the split robot; if the current time is within the threshold range, a second instruction to end the cleaning task is sent to the split robot, and the status of the abnormal interruption of the task is reported to the cloud; if the current time is not within the threshold range, a cabin change instruction is sent to the split robot, and according to the cabin change instruction, the split robot is controlled to continue to execute the current cleaning task in the task queue after completing the cabin change operation.
[0042] Exemplarily, the regular task period is 10 minutes. After the split robot returns to the charging pile to perform the cabin-changing operation, it determines whether the current time is within 10 minutes. If it is within the 10 minutes, the cleaning task is terminated and the interruption exception is reported to the cloud; if it is not within the 10 minutes, the split robot is controlled to perform the cabin-changing operation, and then continues to obtain the current cleaning task in the task queue and schedules the split robot.
[0043] S230: Adjust the task execution order of the split robots according to the task type and estimated completion time of the first task.
[0044] Optionally, adjusting the task execution order of the split robot according to the task type and the estimated completion time of the first task includes: obtaining the task type and the estimated completion time of the first task, the task type including the periodic task and the non-periodic task, determining the estimated completion time according to the comparison results of the first task with the first time threshold and the second time threshold respectively; first executing the first task that meets the first judgment rule, and then executing the current cleaning task.
[0045] The present invention discloses a scheduling method for a split robot. The method comprises: obtaining the current cleaning task in the task queue of the split robot; determining the first task in the task queue with a priority greater than the current cleaning task; and adjusting the task execution order of the split robot according to the task type and the estimated completion time of the first task. According to the embodiment of the present invention, the current cleaning tasks in the task queue are reordered according to the insertion of the first task with a high priority; and by judging the estimated completion time set for each current cleaning task, the resource information of the split robot is integrated, and the split robot is scheduled to perform the corresponding task according to the cleaning demand, which greatly improves the task execution efficiency of the split robot.
[0046] Embodiment 2
[0047] According to an embodiment of the present invention, a schematic diagram of the structure of a split robot scheduling device is provided, and the device can execute the split robot scheduling method provided in the above embodiment 1. Figure 3 As shown, the device includes: an acquisition module 310, a determination module 320 and an adjustment module 330. Among them:
[0048] The acquisition module 310 is configured to acquire the current cleaning task in the task queue of the split robot.
[0049] The determination module 320 is configured to determine a first task in the task queue whose priority is greater than that of the current cleaning task.
[0050] The adjustment module 330 is configured to adjust the task execution order of the split robot according to the task type and estimated completion time of the first task.
[0051] like Figure 4 As shown, the determination module 320 includes:
[0052] A query unit 410 is configured to query whether there is a high priority task inserted in the task queue;
[0053] The first determining unit 420 is configured to continue executing the current cleaning task if there is no high priority task inserted;
[0054] The second determining unit 430 is configured to determine the first task according to a first judgment rule if the high priority task is inserted.
[0055] Further, such as Figure 5 As shown, the first determining unit 420 includes:
[0056] The acquisition subunit 510 is configured to acquire the number of current cleaning tasks in the task queue, where the number is greater than or equal to 1;
[0057] The execution subunit 520 is configured to execute the cleaning tasks to be completed in sequence according to the time sequence in which the current cleaning tasks enter the task queue.
[0058] Optionally, after the first determining unit 420, it also includes: controlling the split robot to execute the ending task of returning to the charging pile.
[0059] Further, such as Figure 6 As shown, the second determining unit 430 includes:
[0060] A first control subunit 610 is configured to control the split robot to perform the first task when the conditions of the first judgment rule are met;
[0061] The second control subunit 620 is configured to control the split robot to terminate the current cleaning task and record the current area and coordinate position of the split robot when the conditions of the first judgment rule are not met.
[0062] Optionally, the second determination unit 430 also includes: when the split robot does not meet the conditions of the first judgment rule, sending a first instruction to the split robot to return to the charging pile; controlling the split robot to replace equipment at the charging pile according to the first instruction, wherein the equipment includes a replacement compartment for the storage compartment of the split robot; and allowing the split robot to continue to perform the remaining cleaning tasks to be completed after completing the equipment replacement operation.
[0063] Furthermore, when the remaining cleaning tasks to be completed are completed, it is determined whether the current moment is within the threshold range of the regular task time period of the split robot; if the current moment is within the threshold range, a second instruction to end the cleaning task is sent to the split robot, and the status of the abnormal interruption of the task is reported to the cloud; if the current moment is not within the threshold range, a cabin change instruction is sent to the split robot, and according to the cabin change instruction, the split robot is controlled to continue to execute the current cleaning task in the task queue after completing the cabin change operation.
[0064] Optionally, the first judgment rule includes: if the first task is a periodic task, determining the first task corresponding to the first area that can be completed within a second time threshold based on the periodic task whose completion time is not within a first time threshold, and the first time threshold is greater than the second time threshold; if the first task is a non-periodic task, determining the first task corresponding to the first area that can be completed within the second time threshold.
[0065] like Figure 7 As shown, the adjustment module 330 includes:
[0066] The acquisition unit 710 is configured to acquire a task type and an estimated completion time of the first task, where the task type includes the periodic task and the non-periodic task, and determine the estimated completion time according to a comparison result of the first task with the first time threshold and the second time threshold respectively;
[0067] The execution unit 720 is configured to first execute the first task that meets the first judgment rule, and then execute the current cleaning task.
[0068] The present invention discloses a scheduling device for a split robot. The device comprises: an acquisition module configured to acquire the current cleaning task in the task queue of the split robot; a determination module configured to determine the first task in the task queue with a priority greater than the current cleaning task; and an adjustment module configured to adjust the task execution order of the split robot according to the task type and the estimated completion time of the first task. According to the embodiment of the present invention, the current cleaning tasks in the task queue are reordered according to the insertion of the first task with a high priority; and by judging the estimated completion time set for each current cleaning task, the resource information of the split robot is integrated, and the split robot is scheduled to perform the corresponding task according to the cleaning demand, which greatly improves the task execution efficiency of the split robot.
[0069] Embodiment 3
[0070] Reference below Figure 8 , which shows a block diagram of an electronic device 800 suitable for implementing an embodiment of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or claimed herein.
[0071] like Figure 8 As shown, the electronic device 800 may include a processing device 810, which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 820 or a program loaded from a storage device 880 into a random access memory (RAM) 830. The processing device 810 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processing device 810 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The processing device 810 performs the various methods and processes described above.
[0072] In the RAM 830, various programs and data required for the operation of the electronic device 800 are also stored. The processing device 810, the ROM 820, and the RAM 830 are connected to each other through a bus 840. An input / output (I / O) interface 850 is also connected to the bus 840.
[0073] Typically, the following devices may be connected to the I / O interface 850: an input device 860 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 870 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 880 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 890. The communication device 890 may allow the electronic device 800 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 8 The electronic device 800 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.
[0074] In particular, according to an embodiment of the present invention, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present invention includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through a communication device 890, or installed from a storage device 880, or installed from a ROM 820. When the computer program is executed by the processing device 810, the above functions defined in the method of the embodiment of the present invention are executed. Alternatively, in other embodiments, the processing device 810 can be configured to execute the method by any other appropriate means (for example, by means of firmware): obtaining the current cleaning task in the task queue of the split robot; determining a first task in the task queue having a priority greater than the current cleaning task; adjusting the task execution order of the split robot according to the task type and the expected completion time of the first task.
[0075] Embodiment 4
[0076] The computer-readable medium of the present invention can be a computer-readable signal medium or a computer-readable storage medium or any combination of the two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present invention, a computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal can take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium 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. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0077] In some embodiments, the client and the server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.
[0078] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.
[0079] The above-mentioned computer-readable medium carries one or more programs. When the above-mentioned one or more programs are executed by the electronic device, the electronic device: obtains the current cleaning task in the task queue of the split robot; determines the first task in the task queue whose priority is greater than the current cleaning task; and adjusts the task execution order of the split robot according to the task type and estimated completion time of the first task.
[0080] Computer program code for performing the operations of the present invention may be written in one or more programming languages or a combination thereof, including, but not limited to, 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 cases involving a remote computer, the remote computer may be connected to the user's computer through 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).
[0081] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0082] The modules involved in the embodiments of the present invention may be implemented by software or hardware, wherein the name of a module does not limit the module itself in some cases.
[0083] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip systems (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof, etc.
[0084] The program code for implementing the method of the present invention can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code can be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
[0085] In the context of the present invention, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0086] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0087] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0088] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship between the client and the server is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services. The server may also be a server of a distributed system, or a server combined with a blockchain.
[0089] Artificial intelligence is a discipline that studies how to use computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.). It includes both hardware-level and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include computer vision technology, speech recognition technology, natural language processing technology, machine learning / deep learning technology, big data processing technology, knowledge graph technology, and other major directions.
[0090] Cloud computing refers to a technology system that uses network access to elastically scalable shared physical or virtual resource pools. Resources can include servers, operating systems, networks, software, applications, and storage devices, and can be deployed and managed on demand and in a self-service manner. Cloud computing technology can provide efficient and powerful data processing capabilities for technical applications such as artificial intelligence and blockchain, as well as model training.
[0091] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution provided by the present invention can be achieved, and this document does not limit this.
[0092] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for dispatching a split robot, characterized in that: The method comprises: Get the current cleaning task in the task queue of the split robot; Determine a first task in the task queue having a priority greater than the current cleaning task; The task execution order of the split robots is adjusted according to the task type and estimated completion time of the first task.
2. The method according to claim 1, characterized in that The determining of a first task in the task queue having a priority greater than the current cleaning task comprises: Check whether there is a high priority task inserted in the task queue; If there is no high priority task inserted, continue to execute the current cleaning task; If the high priority task is inserted, the first task is determined according to a first judgment rule.
3. The method according to claim 2, characterized in that If the high priority task does not exist, then continue to execute the current cleaning task, including: Get the number of current cleaning tasks in the task queue, which number is greater than or equal to 1; The cleaning tasks to be completed are executed in sequence according to the time sequence in which the current cleaning tasks enter the task queue.
4. The method according to claim 3, characterized in that After continuing to execute the current cleaning task, it also includes: controlling the split robot to execute the ending task of returning to the charging pile.
5. The method according to claim 2, characterized in that: If the high priority task is inserted, determining the first task according to a first judgment rule includes: Controlling the split robot to perform the first task when the conditions of the first judgment rule are met; When the conditions of the first judgment rule are not met, the split robot is controlled to terminate the current cleaning task and record the current area and coordinate position of the split robot.
6. The method according to claim 5, characterized in that The first judgment rule includes: If the first task is a periodic task, determining the first task corresponding to the first area that can be completed within a second time threshold according to the periodic tasks whose completion time is not within a first time threshold, and the first time threshold is greater than the second time threshold; If the first task is a non-periodic task, the first task corresponding to the first area that can be completed within a second time threshold is determined.
7. The method according to claim 5, characterized in that When the split robot does not meet the conditions of the first judgment rule, the method further includes: Sending a first instruction to the split robot to return to the charging pile; Controlling the split robot to replace equipment at the charging pile according to the first instruction, wherein the equipment includes a replacement compartment of the storage compartment of the split robot; After completing the equipment replacement operation, the split robot continues to perform the remaining cleaning tasks to be completed.
8. The method according to claim 7, characterized in that Also includes: When the remaining cleaning tasks to be completed are completed, determining whether the current time is within the threshold range of the periodic task time of the split robot; If the current moment is within the threshold range, a second instruction to end the cleaning task is sent to the split robot, and a status of abnormal interruption of the task is reported to the cloud; If the current moment is not within the threshold range, a cabin change instruction is sent to the split robot, and the split robot is controlled according to the cabin change instruction to continue executing the current cleaning task in the task queue after completing the cabin change operation.
9. The method according to any one of claims 1 to 8, characterized in that: The step of adjusting the task execution order of the split robot according to the task type and the estimated completion time of the first task includes: Acquire a task type and an estimated completion time of the first task, where the task type includes the periodic task and the non-periodic task, and determine the estimated completion time according to a comparison result of the first task with the first time threshold and the second time threshold respectively; The first task that meets the first judgment rule is executed first, and the current cleaning task is executed later.
10. A dispatching device for a split robot, characterized in that: The device comprises: An acquisition module is configured to acquire a current cleaning task in a task queue of the split robot; A determination module, configured to determine a first task in the task queue having a priority greater than the current cleaning task; The adjustment module is configured to adjust the task execution order of the split robot according to the task type and expected completion time of the first task.
11. The device according to claim 10, characterized in that The determining module comprises: A query unit, configured to query whether there is a high priority task inserted in the task queue; A first determining unit is configured to continue executing the current cleaning task if there is no high priority task inserted; The second determining unit is configured to determine the first task according to a first judgment rule if the high priority task is inserted.
12. The device according to claim 11, characterized in that The first determining unit includes: An acquisition subunit is configured to acquire the number of current cleaning tasks in the task queue, wherein the number is greater than or equal to 1; The execution subunit is configured to execute the cleaning tasks to be completed in sequence according to the time sequence in which the current cleaning tasks enter the task queue.
13. The device according to claim 11, characterized in that The second determining unit includes: A first control subunit is configured to control the split robot to perform the first task when the conditions of the first judgment rule are met; The second control subunit is configured to control the split robot to terminate the current cleaning task and record the current area and coordinate position of the split robot when the conditions of the first judgment rule are not met.
14. An electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor implements the method as described in any one of claims 1-9.
15. A computer-readable storage medium, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-9.