Task processing method and device, electronic equipment and storage medium
Through the task scheduling system dynamically obtaining the task status and selecting suitable robots to perform tasks, the task effectiveness problem in hybrid distribution between robots and humans is solved, and the task execution efficiency and accuracy are improved.
Patent Information
- Application Number
- CN202410123526.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-29
- Publication Date
- 2025-07-29
AI Technical Summary
In the prior art, when robots and artificially deliver express orders, there are issues with the effectiveness of order tasks, resulting in a decrease in task scheduling accuracy and an increase in error rate. The robot cannot process completed tasks in a timely manner, affecting the efficiency of task execution.
The task scheduling system periodically or regularly obtains the status information of the pending tasks, determines the task status based on the status information, and accurately dispatches the task to be executed to the robot, and selects the most suitable robot for task execution.
It improves the executability and execution efficiency of robot tasks, reduces the error rate in the task scheduling system, and ensures task accuracy and effective execution of robot tasks.
Smart Images

Figure CN120387748A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to the technical field of data processing, and in particular, to a task processing method, apparatus, electronic device, and storage medium. Background Art
[0002] With the development of technology, more and more robots are used in daily life. For example, robots can be used for express order task distribution in a building express delivery scheduling system.
[0003] Currently, the distribution of express order tasks is usually achieved through a mixed operation mode of manual and robot. Among them, the manual mode can include manual picking and distribution and user self-pickup; the robot mode is robot picking and distribution. Usually, manual picking and distribution, user self-pickup, and robot picking and distribution are used in combination. However, this mixed distribution method involves the problem of the effectiveness of order tasks. For example, in the case where the robot picking and distribution is not timely, users tend to self-pickup, but the user does not cancel the robot distribution order task issued, resulting in the robot receiving an invalid order task, causing the order task distribution to fail. For example, if the user does not want to wait for the robot to distribute, they can directly go to the post station to self-pickup, but most users will forget to cancel the express order task distributed by the robot, which may cause the robot to obtain the object to be distributed in the order task before the user self-picks up, making it impossible for the user to complete the self-pickup operation and can only wait for the robot to distribute, or cause the robot to still try to obtain the object to be distributed in the completed express order task after the user self-picks up, resulting in the failure of the robot distribution and an error message. Summary of the Invention
[0004] The present disclosure provides a task processing method, apparatus, electronic device, and storage medium to accurately determine the task status and effectively issue the tasks to be executed to the robot, thereby improving the executability of the tasks to be executed issued to the robot, and further improving the task execution efficiency of the robot.
[0005] In a first aspect, an embodiment of the present disclosure provides a task processing method applied in a task scheduling system. The method includes:
[0006] Receiving at least one task to be processed, where the task to be processed includes at least one subtask to be processed;
[0007] Obtaining the status information of the at least one subtask to be processed, and determining the task status of the corresponding task to be processed based on the status information;
[0008] Determining the task to be executed based on the task status, and issuing the task to be executed to the corresponding robot, where the task to be executed is a task in the at least one task to be processed.
[0009] Second aspect, embodiments of the present disclosure further provide a task processing device, the device comprising:
[0010] A to-be-processed task receiving module, configured to receive at least one to-be-processed task, wherein the to-be-processed task includes at least one to-be-processed subtask;
[0011] A task status determining module, configured to obtain status information of the at least one to-be-processed subtask, and determine a task status of a corresponding to-be-processed task based on the status information;
[0012] A to-be-executed task issuing module, configured to determine a to-be-executed task based on the task status, and issue the to-be-executed task to a corresponding robot, wherein the to-be-executed task is a task among the at least one to-be-processed tasks.
[0013] Third aspect, embodiments of the present disclosure further provide an electronic device, the electronic device comprising:
[0014] One or more processors;
[0015] A storage device, configured to store one or more programs,
[0016] When the one or more programs are executed by the one or more processors, enabling the one or more processors to implement the task processing method provided in any embodiment of the present invention.
[0017] Fourth aspect, embodiments of the present disclosure further provide a storage medium containing computer-executable instructions, the computer-executable instructions being used to execute the task processing method provided in any embodiment of the present invention when executed by a computer processor.
[0018] In the embodiments of the present disclosure, the upper-layer service system periodically or regularly issues to-be-processed tasks to the task scheduling system, so that the task scheduling system simultaneously and continuously receives at least one to-be-processed task issued by the upper-layer service system, and obtains status information of the at least one to-be-processed task, thereby determining the task status of the corresponding to-be-processed task based on the status information of each to-be-processed subtask, and determining the to-be-executed task from the to-be-processed tasks based on the task status and issuing the to-be-executed task to the corresponding robot, solving the problem that due to the time difference between the upper-layer service system and the task scheduling system in issuing tasks in the task scheduling system, the to-be-processed task has been completed before being issued to the robot, resulting in invalid task issuance, and the robot cannot perform the distribution operation of the completed task, leading to a decrease in task scheduling accuracy and an increase in error rate. Furthermore, the technical effects of accurately determining the task status, effectively issuing the to-be-executed task to the robot, improving the executability of the to-be-executed task issued to the robot, and improving the task execution efficiency of the robot are achieved. Description of the Drawings
[0019] In combination with the accompanying drawings and with reference to the following specific embodiments, the above and other features, advantages and aspects of the various embodiments of the present disclosure will become more apparent. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic and the original elements and elements are not necessarily drawn to scale.
[0020] Figure 1 is a schematic flowchart of a task processing method provided by an embodiment of the present disclosure;
[0021] Figure 2 is another schematic flowchart of a task processing method provided by an embodiment of the present disclosure;
[0022] Figure 3 is a schematic structural diagram of a task processing device provided by an embodiment of the present disclosure;
[0023] Figure 4 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure. Specific Embodiments
[0024] The embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not used to limit the protection scope of the present disclosure.
[0025] It should be understood that the various steps recited in the method embodiments of the present disclosure can be executed in a different order and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this regard.
[0026] As used herein, the term "including" and its variants are open-ended, i.e., "including but not limited to". The term "based on" is "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.
[0027] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependent relationships.
[0028] It should be noted that the modifications of "one" and "multiple" mentioned in this disclosure are illustrative rather than restrictive. Those skilled in the art should understand that unless clearly specified otherwise in the context, it should be understood as "one or more".
[0029] The names of the messages or information exchanged between multiple devices in the embodiments of this disclosure are only for illustrative purposes and are not used to limit the scope of these messages or information.
[0030] Before introducing the technical solutions provided by the embodiments of this disclosure, an exemplary description of the application scenario is given first. The technical solutions of the embodiments of this disclosure can be implemented based on a task scheduling system. Among them, the task scheduling system can refer to a scheduling system for robot delivery tasks. The task scheduling system can be used to schedule and issue tasks that the robot needs to deliver. For example, the task scheduling system can be, but is not limited to, a building express delivery scheduling system, a warehouse goods cashier scheduling system, and an express delivery scheduling system within a district. The task scheduling system can receive task transmissions from the upper-layer business system. The upper-layer business system can be, but is not limited to, a platform that generates order tasks based on user needs. Next, based on the task scheduling system, the technical solutions provided by the embodiments of this disclosure are continued to be introduced.
[0031] Figure 1 It is a schematic flowchart of a task processing method provided by an embodiment of this disclosure. The embodiments of this disclosure are applicable to the situation where the task scheduling system can dynamically adjust the task status of the to-be-processed task based on the status information of the to-be-processed subtask, and then issue the to-be-executed task with the adjusted status to the corresponding robot. This method can be executed by a task processing device, which can be implemented in the form of software and / or hardware. Optionally, it can be implemented by an electronic device, which can be a mobile terminal, a PC, or a server, etc.
[0032] As Figure 1 shown, this method, applied in the task scheduling system, includes:
[0033] S110. Receive at least one to-be-processed task, where the to-be-processed task includes at least one to-be-processed subtask.
[0034] Among them, the task to be processed can refer to a task received from an upper-layer business system that needs to be sent to a robot for execution. The task to be processed can include at least one subtask to be processed. The subtask to be processed can refer to the subtask belonging to each object to be delivered. For example, the task to be processed can be, but is not limited to, a courier order task, a food delivery order task, or a document order task of a certain user. If the task to be processed is a courier order task of a certain user, the subtask to be processed can be the delivery subtask belonging to each courier in the courier order task of the certain user. If the task to be processed is a food delivery order task of a certain user, the subtask to be processed can be the delivery subtask belonging to each food delivery in the food delivery order task of the certain user. If the task to be processed is a document order task of a certain user, the subtask to be processed can be the delivery subtask belonging to each document in the document order task of the certain user. The task to be processed can be understood as an order, and the subtask to be processed can be understood as the object to be delivered included in the order.
[0035] Specifically, the upper-layer business system can periodically or regularly send the task to be processed to the task scheduling system. The task scheduling system can simultaneously and continuously receive at least one task to be processed sent by the upper-layer business system.
[0036] S120. Obtain the status information of at least one subtask to be processed, and determine the task status of the corresponding task to be processed based on the status information.
[0037] Among them, the status information can refer to the processing status of the subtask to be processed. The status information can be used to represent the completion degree of the subtask to be processed. For example, the status information can be the processed status or the unprocessed status. The processed status can include, but is not limited to, the status where the user has completed self-pickup and the status where the user has marked self-pickup but has not completed self-pickup. The unprocessed status can be the status where the user has not marked self-pickup and has not performed the self-pickup operation. The task status can refer to the overall task status corresponding to the task to be processed. The task status of the task to be processed can be determined by all the subtasks to be processed in the task to be processed.
[0038] Specifically, after the task scheduling system receives the task to be processed, the task scheduling system can periodically or regularly send the task to be processed for further processing. There will be a time difference between the upper-layer business system sending the task to be processed and the task scheduling system sending the task to be processed, resulting in the situation that during this period, there are tasks to be processed that have been completed but the task scheduling system has not synchronized the completion information of the relevant tasks to be processed. Therefore, at the end of each receiving cycle, it is necessary to determine the status information of each subtask to be processed in the task to be processed according to the time node at the end of the receiving cycle, so that the task status of the corresponding task to be processed can be determined based on the status information of each subtask to be processed.
[0039] S130. Determine the to-be-executed task based on the task status, and send the to-be-executed task to the corresponding robot, where the to-be-executed task is a task among at least one to-be-processed task.
[0040] Among them, the to-be-executed task may refer to a task to be sent to the robot for execution. The to-be-executed task may be a task selected after processing the task status modification of the to-be-processed task. The robot may refer to a delivery robot. The robot can be used to deliver objects such as documents and express deliveries that can be delivered. That is, there are multiple types of robots, so that the optimal robot can be selected to send and execute the to-be-executed task for different to-be-executed tasks.
[0041] Specifically, determine the to-be-executed task from the to-be-processed tasks based on the task status, determine the robot for the to-be-sent task based on the to-be-executed task, and send the to-be-executed task to the corresponding robot, so as to effectively send the to-be-executed task, and further improve the executability of the to-be-executed task sent to the robot, and further improve the task execution efficiency of the robot.
[0042] Exemplarily, "determine the to-be-executed task based on the task status" in S130 may include: regarding the to-be-processed task with the task status of normal processing status as the to-be-executed task. Taking the building express delivery scheduling system as an example, the advantage of this setting is that each time the task scheduling system sends a task to the robot, it can first batch-detect whether the express packages in the task pool have been picked up, so as to determine the to-be-executed task based on the accurate task status, and further improve the executability of the to-be-executed task sent to the robot.
[0043] The technical solution of the embodiments of the present disclosure enables the task scheduling system to continuously receive at least one to-be-processed task sent by the upper-layer service system by the upper-layer service system periodically or regularly sending the to-be-processed tasks to the task scheduling system, and obtain the status information of at least one to-be-processed task. Thus, the task status of the corresponding to-be-processed task can be determined based on the status information of each to-be-processed subtask, and the to-be-executed task can be determined from the to-be-processed tasks based on the task status and sent to the corresponding robot, solving the problem that due to the time difference in task sending between the upper-layer service system and the task scheduling system in the task scheduling system, the to-be-processed task has been completed before being sent to the robot, resulting in ineffective task sending, and the robot cannot perform the delivery operation of the completed task, leading to a decrease in task scheduling accuracy and an increase in error rate. Furthermore, the technical effect of accurately determining the task status, effectively sending the to-be-executed task to the robot, improving the executability of the to-be-executed task sent to the robot, and improving the task execution efficiency of the robot is achieved.
[0044] On the basis of the above technical solution, the method further includes: after determining the task to be executed, determining a target robot corresponding to the task to be executed based on the task association information of at least one subtask to be processed in the task to be executed, so as to send the task to be executed to the target robot.
[0045] Among them, the task association information may refer to the attribute information of the object to be delivered in the subtask to be processed. For example, the task association information may include at least one of the size information, weight information, and object type information of the object to be delivered corresponding to the subtask to be processed. The target robot may refer to a robot suitable for executing the subtask to be processed, that is, the robot most adapted to the subtask to be processed. For example, the target robot may be the most idle robot, the robot closest to the pick-up location, or the robot whose compartment is most consistent with the task association information.
[0046] Specifically, after determining the task to be executed, for the task association information of each subtask to be processed in the task to be executed, a target robot that simultaneously satisfies all the task association information may be determined, and the task to be executed may be sent to the target robot. It is also possible to determine the target robot corresponding to each task association information for the task association information of each subtask to be processed in the task to be executed, and send the subtasks to be executed in the task to be executed to the corresponding target robots respectively, so as to determine the most adapted target robot according to the attribute information of the object to be delivered in the subtask to be processed, avoid the situation that the robot cannot carry the object to be delivered in the subtask to be executed, resulting in the need to reallocate the robot and reducing the task delivery efficiency, and further improve the accuracy of sending the subtasks to be executed, and further improve the execution efficiency of the subtasks to be executed.
[0047] On the basis of the above technical solution, the method further includes: generating scheduling information based on the task to be executed, and sending the scheduling information to the target robot, so that the target robot receives the scheduling information and processes the task based on at least one subtask to be processed included in the scheduling information; wherein, the scheduling information includes at least one subtask to be processed, at least one target delivery address of the at least one subtask to be processed, and at least one of the target delivery paths.
[0048] Among them, the scheduling information can be used to represent the specific execution planning information of the task to be executed. The advantage of this setting is that while sending the task to be executed to the target robot, the generated scheduling information can also be sent to the target robot, so that when the target robot receives the task to be executed, it can execute the corresponding task to be executed based on the scheduling information without waiting for a long time. Especially when the target robot is in an idle state with no tasks to execute, the task execution efficiency of the robot is further improved.
[0049] Figure 2Another flowchart of task processing provided by an embodiment of the present disclosure. Based on the above embodiments, the embodiment of the present invention describes in detail the process of determining the task status of corresponding tasks to be processed. The explanations of the same or corresponding terms in the above embodiments are not repeated here.
[0050] As Figure 2 shown, the method is applied in a task scheduling system and includes:
[0051] S210. Receive at least one task to be processed, where the task to be processed includes at least one subtask to be processed.
[0052] S220. Determine the task identifier of at least one subtask to be processed.
[0053] Among them, the task identifier may refer to the unique subtask identifier information corresponding to the subtask to be processed. The task identifier information can be used to indicate the uniquely corresponding subtask to be processed. For example, the task identifier information can be, but is not limited to, a QR code identifier, a barcode identifier, or a combination identifier of numbers, letters, and symbols.
[0054] Specifically, the task identifier corresponding to each subtask to be processed can be determined based on the task information carried by each subtask to be processed.
[0055] S230. Obtain the status information of the subtask to be processed corresponding to the task identifier based on a pre-set business detection interface, where the status information includes a processed status or an unprocessed status.
[0056] Among them, the business detection interface may refer to a task data query interface configured in the business system. The business detection interface can be used to provide an open-ended timed query function. For example, the business detection interface can be an application programming interface (API) corresponding to the function, so that it can be queried regularly through the open corresponding function API. Among them, querying through the business detection interface has no intrusion on the upper-layer business system, and there is no need for docking between the upper-layer business system and the task scheduling system, which improves the system security while reducing the connection cost. The processed status can include, but is not limited to, the status where the user has completed self-pickup and the status where the user has marked self-pickup but has not completed self-pickup. The unprocessed status can be the status where the user has not marked self-pickup and has not performed self-pickup operations.
[0057] Specifically, obtain the status information of each subtask to be processed corresponding to the task identifier based on the business detection interface pre-configured in the upper-layer business system, so as to improve the accuracy and efficiency of obtaining the status information of the subtask to be processed based on the unique identifier.
[0058] S240. Determine the task status of the task to be processed based on the status information of at least one subtask to be processed in the task to be processed.
[0059] Specifically, determine the task status of the task to be processed based on the status information of each subtask to be processed in the task to be processed, so as to accurately determine the task status corresponding to the overall (task to be processed) through the status information corresponding to each local (subtask to be processed). For example, as long as the status information of one subtask to be processed is in the unprocessed state, the task status of the task to be processed to which the subtask to be processed belongs is in the normal processing state, thereby improving the determination efficiency of the task status of the task to be processed.
[0060] S250. Determine the task to be executed based on the task status, and send the task to be executed to the corresponding robot, where the task to be executed is a task in at least one task to be processed.
[0061] The technical solution of the embodiments of the present disclosure determines the task identifiers of at least one subtask to be processed; obtains the status information of the subtask to be processed corresponding to the task identifier based on a pre-set service detection interface, thereby improving the accuracy and efficiency of obtaining the status information of the subtask to be processed based on the unique identifier, and obtaining the status information through the service detection interface without invading the upper-layer service system and without the need for docking between the upper-layer service system and the task scheduling system, reducing the connection cost while improving system security; determines the task status of the task to be processed based on the status information of at least one subtask to be processed in the task to be processed, so as to accurately determine the task status corresponding to the overall (task to be processed) through the status information corresponding to each local (subtask to be processed), and further, as long as the status information of one subtask to be processed is in the unprocessed state, the task status of the task to be processed to which the subtask to be processed belongs is in the normal processing state, further improving the determination efficiency of the task status of the task to be processed.
[0062] Based on the above technical solution, S240 may include: if the status information of at least one subtask to be processed in the task to be processed is in the processed state, mark the task status of the task to be processed as the cancelled state; if there is a subtask to be processed with status information in the unprocessed state in the task to be processed, do not display the subtasks to be processed with status information in the processed state, and mark the task status of the task to be processed as the normal processing state.
[0063] Among them, the cancelled state may refer to the state of not executing the task to be processed. The cancelled state may indicate that all subtasks to be processed in the task to be processed are in the processed state. The normal processing state may refer to the state in which the task to be processed can be executed. The normal processing state may indicate that there is a subtask to be processed in the task to be processed in the unprocessed state.
[0064] Specifically, if the status information of all the sub-tasks to be processed in the task to be processed is in the processed state, the task status of the task to be processed is marked as the cancelled state, and no subsequent task distribution operation is performed. If there is at least one sub-task to be processed with the status information in the unprocessed state in the task to be processed, the sub-tasks to be processed with the status information in the processed state are not displayed, and the task status of the task to be processed is marked as the normal processing state, so that subsequent task distribution operations can be performed based on the sub-tasks to be processed with the displayed status information, and further the non-executable tasks in the processed state and the executable tasks in the unprocessed state in the task to be processed can be accurately distinguished.
[0065] Figure 3 FIG. is a schematic structural diagram of a task processing device provided by an embodiment of the present disclosure, as Figure 3 shown, the device includes: a to-be-processed task receiving module 310, a task status determining module 320, and a to-be-executed task distributing module 330.
[0066] Among them, the to-be-processed task receiving module 310 is configured to receive at least one to-be-processed task, where the to-be-processed task includes at least one to-be-processed sub-task; the task status determining module 320 is configured to obtain the status information of at least one to-be-processed sub-task, and determine the task status of the corresponding to-be-processed task based on the status information; the to-be-executed task distributing module 330 is configured to determine the to-be-executed task based on the task status, and distribute the to-be-executed task to the corresponding robot, where the to-be-executed task is a task in at least one to-be-processed task.
[0067] The technical solution of the embodiment of the present disclosure is that the upper-layer service system periodically or regularly distributes the to-be-processed tasks to the task scheduling system, so that the task scheduling system simultaneously and continuously receives at least one to-be-processed task distributed by the upper-layer service system, and obtains the status information of at least one to-be-processed task, so that the task status of the corresponding to-be-processed task can be determined based on the status information of each to-be-processed sub-task, and the to-be-executed task is determined from the to-be-processed tasks based on the task status and distributed to the corresponding robot, which solves the problem that due to the time difference in task distribution between the upper-layer service system and the task scheduling system in the task scheduling system, the to-be-processed task has been completed before being distributed to the robot, resulting in ineffective task distribution, and the robot cannot perform the distribution operation of the completed task, leading to a decrease in task scheduling accuracy and an increase in error rate. Furthermore, the technical effect of accurately determining the task status, effectively distributing the to-be-executed task to the robot, improving the executability of the to-be-executed task distributed to the robot, and improving the task execution efficiency of the robot is achieved.
[0068] Based on the above technical solution, the task status determination module 320 may include: a task identifier determination sub-module for determining the task identifiers of at least one sub-task to be processed; a status information acquisition sub-module for acquiring the status information of the sub-task to be processed corresponding to the task identifier based on a pre-set service detection interface, where the status information includes a processed status or an unprocessed status; and a task status determination sub-module for determining the task status of the task to be processed based on the status information of at least one sub-task to be processed in the task to be processed.
[0069] Based on the above technical solution, the task status determination sub-module is specifically configured to: if the status information of at least one sub-task to be processed in the task to be processed is all in the processed status, mark the task status of the task to be processed as the cancelled status; if there is a sub-task to be processed with the status information being the unprocessed status in the task to be processed, do not display the sub-task to be processed with the status information being the processed status, and mark the task status of the task to be processed as the normal processing status.
[0070] Based on the above technical solution, in the task to be executed distribution module 330, "determining the task to be executed based on the task status" is specifically configured to: use the task to be processed with the task status being the normal processing status as the task to be executed.
[0071] Based on the above technical solution, the device further includes: a target robot determination module for, after determining the task to be executed, determining the target robot corresponding to the task to be executed based on the task association information of at least one sub-task to be processed in the task to be executed, so as to distribute the task to be executed to the target robot.
[0072] Based on the above technical solution, the task association information includes at least one of the size information, weight information, and object type information of the delivery object corresponding to the sub-task to be processed.
[0073] Based on the above technical solution, the device further includes: a task processing module for generating scheduling information based on the task to be executed and sending the scheduling information to the target robot, so that the target robot receives the scheduling information and performs task processing based on at least one sub-task to be processed included in the scheduling information; where the scheduling information includes at least one sub-task to be processed, at least one target delivery address of the sub-task to be processed, and at least one of the target delivery paths.
[0074] The task processing device provided by the embodiments of the present disclosure can execute the task processing method provided by any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
[0075] It should be noted that the various units and modules included in the above device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of the functional units are only for the convenience of mutual distinction and do not limit the protection scope of the embodiments of the present disclosure.
[0076] Figure 4 FIG. 4 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure. The following refers to Figure 4 which shows a schematic structural diagram of an electronic device (such as a Figure 4 terminal device or a server in) 400 suitable for implementing the embodiments of the present disclosure. The terminal device in the embodiments of the present disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Tablet Computers), PMPs (Portable Multimedia Players), in-vehicle terminals (such as in-vehicle navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 4 The electronic device shown is only an example and should not impose any limitation on the functions and usage scope of the embodiments of the present disclosure.
[0077] As Figure 4 shown, the electronic device 400 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 401, which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 402 or a program loaded from a storage device 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of the electronic device 400 are also stored. The processing device 401, the ROM 402, and the RAM 403 are connected to each other through a bus 404. An editing / output (I / O) interface 405 is also connected to the bus 404.
[0078] Generally, the following devices may be connected to the I / O interface 405: an input device 406 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 407 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 408 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 409. The communication device 409 may allow the electronic device 400 to communicate with other devices wirelessly or wiredly to exchange data. Although Figure 4 the electronic device 400 with various devices is shown, it should be understood that it is not required to implement or have all the shown devices. Instead, more or fewer devices may be implemented or had.
[0079] In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, an embodiment of the present disclosure includes a computer program product that includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes program code for performing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from a network via a communication device 409, or installed from a storage device 408, or installed from a ROM 402. When the computer program is executed by a processing device 401, the above-mentioned functions defined in the methods of the embodiments of the present disclosure are performed.
[0080] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are for illustrative purposes only and are not used to limit the scope of these messages or information.
[0081] The electronic device provided by the embodiment of the present disclosure and the task processing method provided by the above embodiment belong to the same inventive concept. Technical details not described in detail in this embodiment can be referred to in the above embodiment, and this embodiment has the same beneficial effects as the above embodiment.
[0082] The embodiment of the present disclosure provides a computer storage medium, on which a computer program is stored, and when the program is executed by a processor, the task processing method provided by the above embodiment is implemented.
[0083] It should be noted that the above-mentioned computer-readable medium in the present disclosure can be a computer-readable signal medium, 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, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium 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 disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, apparatus, or device. In the present disclosure, the computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, in which the computer-readable program code is carried. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium can also be any computer-readable medium other than the computer-readable storage medium, and this computer-readable signal medium can send, propagate, or transmit a program for use by or in combination with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0084] In some embodiments, the client and the server can communicate using any currently known or future-developed network protocol such as HTTP (HyperText Transfer Protocol), and can be interconnected with digital data communication in any form or medium (for example, a communication network). Examples of communication networks include local area networks ("LAN"), wide area networks ("WAN"), the Internet (for example, the Internet), and end-to-end networks (for example, ad hoc end-to-end networks), as well as any currently known or future-developed network.
[0085] The above-mentioned computer-readable medium can be included in the above-mentioned electronic device; it can also exist separately without being assembled into the electronic device.
[0086] The above computer-readable medium carries one or more programs, which, when executed by the electronic device, cause the electronic device to: receive at least one task to be processed, where the task to be processed includes at least one subtask to be processed; obtain status information of at least one subtask to be processed, and determine the task status of the corresponding task to be processed based on the status information; determine the task to be executed based on the task status, and send the task to be executed to the corresponding robot, where the task to be executed is a task in at least one task to be processed.
[0087] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages or combinations thereof. The programming languages include, but are not limited to, object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code may execute entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer or server. In the case of 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., through the Internet using an Internet service provider).
[0088] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that, in some alternative implementations, the functions marked in the block may occur in a different order than marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, may be implemented by a dedicated hardware-based system for performing the specified functions or operations, or may be implemented by a combination of dedicated hardware and computer instructions.
[0089] The units involved in the embodiments of the present disclosure may be implemented in software or in hardware. Among them, the name of the unit does not constitute a limitation on the unit itself in some cases. For example, the first acquisition unit may also be described as "the unit for acquiring at least two Internet protocol addresses".
[0090] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that can be used include: Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), Systems on Chip (SOCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0091] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media would include electrical connections based on one or more wires, portable computer disks, hard disks, Random Access Memory (RAM), Read Only Memory (ROM), Erasable Programmable Read Only Memory (EPROM or Flash Memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0092] According to one or more embodiments of the present disclosure, [Example 1] provides a task processing method, which is applied in a task scheduling system. The method includes:
[0093] Receiving at least one task to be processed, where the task to be processed includes at least one subtask to be processed;
[0094] Obtaining status information of the at least one subtask to be processed, and determining the task status of the corresponding task to be processed based on the status information;
[0095] Determining a task to be executed based on the task status, and sending the task to be executed to the corresponding robot, where the task to be executed is a task among the at least one task to be processed.
[0096] According to one or more embodiments of the present disclosure, [Example 2] provides a task processing method, which further includes:
[0097] Optionally, the obtaining status information of the at least one subtask to be processed and determining the task status of the corresponding task to be processed based on the status information includes:
[0098] Determining the task identifier of the at least one subtask to be processed;
[0099] Obtain the status information of the subtasks to be processed corresponding to the task identifier based on a pre-set business detection interface, where the status information includes a processed status or an unprocessed status;
[0100] Determine the task status of the task to be processed based on the status information of at least one subtask to be processed in the task to be processed.
[0101] According to one or more embodiments of the present disclosure, [Example Three] provides a task processing method, further including:
[0102] Optionally, the determining the task status of the task to be processed based on the status information of at least one subtask to be processed in the task to be processed includes:
[0103] If the status information of at least one subtask to be processed in the task to be processed is all in the processed status, mark the task status of the task to be processed as the cancelled status;
[0104] If there is a subtask to be processed with the status information being the unprocessed status in the task to be processed, do not display the subtasks to be processed with the status information being the processed status, and mark the task status of the task to be processed as the normal processing status.
[0105] According to one or more embodiments of the present disclosure, [Example Four] provides a task processing method, further including:
[0106] Optionally, the determining the task to be executed based on the task status includes:
[0107] Use the task to be processed with the task status being the normal processing status as the task to be executed.
[0108] According to one or more embodiments of the present disclosure, [Example Five] provides a task processing method, further including:
[0109] Optionally, after determining the task to be executed, the method further includes:
[0110] Based on the task association information of at least one subtask to be processed in the task to be executed, determine the target robot corresponding to the task to be executed, so as to send the task to be executed to the target robot.
[0111] According to one or more embodiments of the present disclosure, [Example Six] provides a task processing method, further including:
[0112] Optionally, the task association information includes at least one of the size information, weight information, and object type information of the delivery object corresponding to the subtask to be processed.
[0113] According to one or more embodiments of the present disclosure, [Example Seven] provides a task processing method, further including:
[0114] Optionally, it further includes:
[0115] Generate scheduling information based on the to-be-executed task, and send the scheduling information to the target robot, so that the target robot receives the scheduling information and processes the task based on at least one to-be-processed subtask included in the scheduling information;
[0116] Wherein, the scheduling information includes at least one of at least one to-be-processed subtask, the target delivery address of the at least one to-be-processed subtask, and the target delivery path.
[0117] According to one or more embodiments of the present disclosure, [Example Eight] provides a task processing device configured in a task scheduling system. The device includes:
[0118] A to-be-processed task receiving module, configured to receive at least one to-be-processed task, wherein the to-be-processed task includes at least one to-be-processed subtask;
[0119] A task status determining module, configured to obtain the status information of the at least one to-be-processed subtask and determine the task status of the corresponding to-be-processed task based on the status information;
[0120] A to-be-executed task sending module, configured to determine the to-be-executed task based on the task status and send the to-be-executed task to the corresponding robot, wherein the to-be-executed task is a task among the at least one to-be-processed tasks.
[0121] The above description is only a preferred embodiment of the present disclosure and an explanation of the applied technical principle. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solution formed by the specific combination of the above technical features, and should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosure concept. For example, a technical solution formed by mutually replacing the above features with technical features having similar functions disclosed in the present disclosure (but not limited to).
[0122] Moreover, although the operations are depicted in a particular order, this should not be construed as requiring that the operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the foregoing discussion, these should not be construed as limitations on the scope of the present disclosure. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented separately or in any suitable subcombination in multiple embodiments.
[0123] Although the subject matter has been described in language specific to structural features and / or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims.
Claims
1. A task processing method, characterized in that, In an application task scheduling system, the method includes: Receiving at least one task to be processed, where the task to be processed includes at least one subtask to be processed; Obtaining the status information of the at least one subtask to be processed, and determining the task status of the corresponding task to be processed based on the status information; Determining the task to be executed based on the task status, and sending the task to be executed to the corresponding robot, where the task to be executed is a task among the at least one task to be processed.
2. The method according to claim 1, characterized in that The obtaining the status information of the at least one subtask to be processed, and determining the task status of the corresponding task to be processed based on the status information includes: Determining the task identifier of the at least one subtask to be processed; Obtaining the status information of the subtask to be processed corresponding to the task identifier based on a pre-set business detection interface, where the status information includes a processed status or an unprocessed status; Determining the task status of the task to be processed based on the status information of at least one subtask in the task to be processed.
3. The method according to claim 2, wherein The determining the task status of the task to be processed based on the status information of at least one subtask in the task to be processed includes: If the status information of at least one subtask in the task to be processed is all in the processed status, then marking the task status of the task to be processed as the cancelled status; If there is a subtask to be processed with the status information being the unprocessed status in the task to be processed, then not displaying the subtasks to be processed with the status information being the processed status, and marking the task status of the task to be processed as the normal processing status.
4. The method according to claim 1, wherein The determining the task to be executed based on the task status includes: Taking the task to be processed with the task status being the normal processing status as the task to be executed.
5. The method according to claim 1, characterized in that, After determining the task to be executed, the method further includes: Determining the target robot corresponding to the task to be executed based on the task association information of at least one subtask in the task to be executed, so as to send the task to be executed to the target robot.
6. The method according to claim 5, characterized in that, The task association information includes at least one of the size information, weight information, and object type information of the delivery object corresponding to the subtask to be processed.
7. The method according to claim 5, characterized in that, It further includes: Generating scheduling information based on the task to be executed, and sending the scheduling information to the target robot, so that the target robot receives the scheduling information and processes the task based on at least one subtask included in the scheduling information; Wherein, the scheduling information includes at least one of at least one subtask to be processed, the target delivery address of the at least one subtask to be processed, and the target delivery path.
8. A task processing device, characterized in that, Configured in the task scheduling system, the device includes: A to-be-processed task receiving module, configured to receive at least one to-be-processed task, where the to-be-processed task includes at least one to-be-processed subtask; A task status determining module, configured to obtain the status information of the at least one to-be-processed subtask, and determine the task status of the corresponding to-be-processed task based on the status information; A to-be-executed task distribution module, configured to determine a to-be-executed task based on the task status and distribute the to-be-executed task to a corresponding robot, where the to-be-executed task is a task among the at least one to-be-processed task.
9. An electronic device, characterized in that, The electronic device includes: One or more processors; A storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the task processing method according to any one of claims 1-7.
10. A storage medium containing computer-executable instructions, where the computer-executable instructions are used to execute the task processing method according to any one of claims 1-7 when executed by a computer processor.