CN114679481A - Robot control method and device, storage medium and robot cluster - Google Patents

Robot control method and device, storage medium and robot cluster Download PDF

Info

Publication number
CN114679481A
CN114679481A CN202210168892.0A CN202210168892A CN114679481A CN 114679481 A CN114679481 A CN 114679481A CN 202210168892 A CN202210168892 A CN 202210168892A CN 114679481 A CN114679481 A CN 114679481A
Authority
CN
China
Prior art keywords
task
time
robot
executed
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210168892.0A
Other languages
Chinese (zh)
Inventor
陈钊清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloudminds Shanghai Robotics Co Ltd
Original Assignee
Cloudminds Shanghai Robotics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cloudminds Shanghai Robotics Co Ltd filed Critical Cloudminds Shanghai Robotics Co Ltd
Priority to CN202210168892.0A priority Critical patent/CN114679481A/en
Publication of CN114679481A publication Critical patent/CN114679481A/en
Priority to PCT/CN2023/077868 priority patent/WO2023160608A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)

Abstract

The disclosure relates to a robot control method, a device, a storage medium and a robot cluster, wherein the method comprises the following steps: requesting the server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time; setting the timing time of a task timer in response to the task to be executed of the robot and the task start time corresponding to the task to be executed, which are acquired from the server; updating the timing time of the task timer based on the updated local time in response to the update to the local time occurring within the timing time; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time. By using the method disclosed by the invention, under the condition that a precise hardware clock component is not arranged, the accuracy of the timing time of the robot is still higher, so that the hardware cost of the robot is reduced.

Description

Robot control method and device, storage medium and robot cluster
Technical Field
The present disclosure relates to the field of robot technologies, and in particular, to a robot control method, apparatus, storage medium, and robot cluster.
Background
In the related art, a robot is provided with a precise hardware clock component, when the robot executes a task issued by a server, the robot determines a corresponding timing time according to a task start time of each task through the precise hardware clock component, and when the timing time is reached, the robot executes the corresponding task.
However, with the existing method, the robot needs to be provided with a precise hardware clock component to ensure that the timing time of the robot has higher accuracy, and the cost of the precise hardware clock component is higher, so that the cost of the robot is higher.
Disclosure of Invention
The disclosure aims to provide a robot control method, a robot control device, a storage medium and a robot cluster, and aims to solve the technical problem that the cost of a robot is high.
In order to achieve the above object, in a first aspect, the present disclosure provides a control method of a robot, the method including:
requesting the server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time;
setting the timing time of a task timer in response to the task to be executed of the robot and the task starting time corresponding to the task to be executed, which are acquired from the server, wherein the timing time of the task timer is determined according to the difference between the task starting time and the local time of the robot;
Updating the timing time of the task timer based on the updated local time in response to the update to the local time occurring within the timing time;
and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time.
Optionally, requesting the server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time, including:
the method comprises the steps that before a task to be executed of the robot and task starting time corresponding to the task to be executed are obtained from a server, the server is requested to send system time of the server according to a first preset period, and local time of the robot is updated according to the system time;
after the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the server is requested to send the system time of the server according to a second preset period, the local time of the robot is updated according to the system time, wherein the second preset period is smaller than the first preset period, and the duration of the timing time is larger than the second preset period.
Optionally, requesting, according to a preset period, the server to send the system time of the server, and updating the local time of the robot according to the system time, including:
Requesting the server to send the system time of the server according to a preset period;
in response to the system time obtained by the server, recording a second difference value between the system time and the current starting time of the robot under the condition that a first difference value between the system time and the local time of the robot at the current moment is larger than a preset threshold value;
and updating the local time of the robot according to the second difference and the real-time changed starting time of the robot.
Optionally, the updated timing time includes updated timing times corresponding to different timers one to one; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time, wherein the task to be executed comprises the following steps:
and controlling the robot to execute the task to be executed when any one of the plurality of updated timing times is reached first.
Optionally, the plurality of task timers includes at least a system alarm timer of the robot and a thread scheduling dependent timer of the robot.
Optionally, the updated timing time includes a plurality of updated timing times corresponding to a plurality of tasks to be executed one to one; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time, wherein the task to be executed comprises the following steps:
And for each task to be executed, when the updated timing time corresponding to the task to be executed reaches, if the task to be executed before the task to be executed is not finished, keeping the robot to continue executing the previous task to be executed, and controlling the robot to start executing the task to be executed.
Optionally, the setting the timing time of the task timer in response to the task to be executed and the task start time corresponding to the task to be executed, which are acquired from the server, includes:
in response to the task file acquired from the server, extracting the task to be executed and the task start time corresponding to the task to be executed from the task file, wherein the task file is a file in an XML format;
and setting the timing time of the task timer according to the difference between the task starting time and the local time of the robot.
In a second aspect, the present disclosure provides a control apparatus of a robot, the apparatus including:
the first updating module is used for requesting the server to send the system time of the server according to a preset period and updating the local time of the robot according to the system time;
the setting module is used for responding to the task to be executed of the robot acquired from the server and the task starting time corresponding to the task to be executed, and setting the timing time of the task timer, wherein the timing time of the task timer is determined according to the difference value between the task starting time and the local time of the robot;
A second update module to update the timing time of the task timer based on the updated local time in response to an update to the local time occurring within the timing time;
and the control module is used for controlling the robot to execute the task to be executed in response to the fact that the timing of the task timer reaches the updated timing time.
In a third aspect, the present disclosure provides a control apparatus for a robot, comprising:
a memory having a computer program stored thereon;
a processor for executing the computer program in the memory to perform the steps of the method of any one of the first aspect.
In a third aspect, the present disclosure provides a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the method of any one of the first aspect.
In a fourth aspect, the present disclosure provides a robot cluster, including a server and at least two robots, where the at least two robots are both in communication connection with the server; wherein each of the robots is capable of executing the control method of the robot provided by the first aspect.
By adopting the technical scheme, the local time of the robot is updated through the system time sent by the server according to the preset period, and when the local time is updated within the set timing time according to the local time and the task starting time, the timing time of the task timer is updated according to the updated local time, so that the accuracy of the updated timing time of the robot is ensured to be higher, therefore, under the condition of not setting a precise hardware clock component, the accuracy of the timing time of the robot is still higher, and the hardware cost of the robot is reduced.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the description serve to explain the disclosure, but do not constitute a limitation of the disclosure. In the drawings:
fig. 1 is a schematic flowchart of a control method of a robot according to an embodiment of the present disclosure.
Fig. 2 is a schematic structural diagram of a control device of a robot according to an embodiment of the present disclosure.
Fig. 3 is a schematic structural diagram of a control device of another robot according to an embodiment of the present disclosure.
Fig. 4 is a schematic structural diagram of a robot cluster provided in the embodiment of the present disclosure.
Fig. 5 is a schematic structural diagram of a server according to an embodiment of the present disclosure.
Detailed Description
The following detailed description of specific embodiments of the present disclosure is provided in connection with the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present disclosure, are given by way of illustration and explanation only, not limitation.
Referring to fig. 1, fig. 1 is a flowchart illustrating a control method of a robot according to an embodiment of the present disclosure, where the method is used for a robot, and the robot may be, for example, a sweeping robot, a handling robot, a guiding robot, and the like, and the control method of the robot includes:
And S101, requesting the server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time.
The robot is in communication connection with the server so that the robot can conveniently acquire the system time of the server, the server can be a server in various forms or a cloud platform and the like, and the system time of the server can be world time with extremely high accuracy. The preset period may be a value set by the user according to the demand, for example, every ten minutes or the like. When each preset period is reached, the robot can automatically request the server to send the system time of the current moment of the server, and after receiving the system time, the robot updates the local time of the robot by using the system time, so that the local time of the robot and the system time of the server are ensured to have higher synchronism, and the accuracy of the local time of the robot is improved.
In the specific implementation of the disclosure, when the server issues the system time, one issuing time may be marked for the system time, when the robot receives the system time, the robot determines the receiving time of the system time, the robot determines the transmission time of the system time according to the receiving time and the issuing time of the system time, and then adds the transmission time to the system time issued by the server to obtain the actual system time obtained by the robot.
Optionally, requesting the server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time, including: requesting the server to send the system time of the server according to a preset period; in response to the system time obtained by the server, recording a second difference value between the system time and the current starting time of the robot under the condition that a first difference value between the system time and the local time of the robot at the current moment is larger than a preset threshold value; and updating the local time of the robot according to the second difference and the real-time changed starting time of the robot.
After the robot is started, the robot records the self starting time length in real time, and when the robot is restarted, the starting time length can return to zero. The preset period and the preset threshold may be set by a user based on a requirement, for example, the preset period is 2 minutes, and the preset threshold is 5 milliseconds, which is not limited in the present disclosure. For any current moment, the obtained second difference value may be added to the starting-up time length of the robot at the current moment, so as to obtain the local time at the current moment.
When the server issues the system time for the first time, the robot determines a second difference between the system time (which may be the actual system time added to the transmission time) and the current startup duration, and then uses the sum of the second difference and the startup duration of the robot changing in real time as the local time of the robot.
When a preset period is reached each time, the robot determines a difference value between the current system time (which may be the actual system time added to the transmission time) of the acquired server and the current local time of the robot, and when the first difference value is greater than a preset threshold value, the robot updates the second difference value of the current preset period according to the steps and continues to update the local time of the robot; and when the first difference is smaller than or equal to the preset threshold, continuing to use a second difference of the previous preset period, and updating the local time of the robot in real time according to the steps.
For example, the system time when the robot acquires the server may be denoted as Ta (Ta may refer to the actual system time mentioned above), the current power-on time period of the robot is Tb, and the second difference between them is Tc — Ta-Tb. When the next preset period arrives, determining that a first difference between the system time of the server and the local time is recorded as Td ═ Te (the system time of the server) -Tf (the local time), wherein Td is smaller than a preset threshold value, and at the moment, continuing to use a second difference Tc ═ Ta-Tb; and when the first difference Td corresponding to the next preset period is greater than a preset threshold, determining the starting time of the robot as Tg, further determining a new second difference Th-Te-Tg, and then updating the local time of the robot by using the Th and the starting time of the robot changing in real time.
The system time of the robot and the system time of the server are possibly asynchronous due to operation difference of hardware such as a system CPU of the robot, so that the local time of the robot can be obtained by using the system time of the server as a time basis of the robot based on the difference and the starting time of the robot, the local time and the system time of the server have extremely high synchronism, and the accuracy of the local time is high.
102. And setting the timing time of the task timer in response to the task to be executed of the robot and the task starting time corresponding to the task to be executed, which are acquired from the server, wherein the timing time of the task timer is determined according to the difference between the task starting time and the local time of the robot.
In the present disclosure, the task executed by the robot is issued by the server, and the server may determine the task to be executed by the robot and the task start time corresponding to the task to be executed according to the system time of the server. By using the method disclosed by the invention, the local time of the robot is obtained based on the system time of the server, and the local time of the robot and the system time of the server have higher synchronism, so that the time accuracy of the robot for executing the task to be executed can be improved.
When the method is implemented specifically, for any current time, after any task to be executed and the task start time of the task to be executed are obtained, the local time corresponding to the current time determined in the step S101 is subtracted from the task start time, and the timing time of the task timer is obtained.
For example, for the current time a, the local time a1 of the robot, and the task start time of the task B to be executed is a2, the obtained timing time of the task timer is a3 which is a2-a 1.
Optionally, requesting, according to a preset period, the server to send the system time of the server, and updating the local time of the robot according to the system time, including: the method comprises the steps that before a task to be executed of the robot and task starting time corresponding to the task to be executed are obtained from a server, the server is requested to send system time of the server according to a first preset period, and local time of the robot is updated according to the system time; after the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the server is requested to send the system time of the server according to a second preset period, the local time of the robot is updated according to the system time, wherein the second preset period is smaller than the first preset period, and the duration of the timing time is larger than the second preset period.
The first preset period and the second preset period may be set by a user based on a requirement, and are not limited herein. Before the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the robot does not do the task, the accuracy requirement of the local time is low, and the robot can be updated by adopting a long first preset period so as to reduce the expense of information transmission. After the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the robot performs the task, the accuracy requirement of the local time is high, and the local time can be updated by adopting a second short preset period so as to improve the accuracy of the local time.
103. In response to an update to the local time occurring within the timed time, the timed time of the task timer is updated based on the updated local time.
104. And controlling the robot to execute the task to be executed in response to the timed time of the task timer reaching the timed time.
In particular, when the present disclosure is implemented, the timing time of the task timer may be a countdown time length, and the timing time of the task timer may be greater than a preset period, in other words, when the timing time does not arrive, at least one preset period arrives, and when the at least one preset period arrives, the local time of the robot is updated.
After the local time is updated, if the timing time is not changed, the arrival time of the timing time may be different before and after the local time is updated, which results in lower accuracy of the timing time.
For example, after the local time is updated, the local time changes from B to (B +1s), and the local time is advanced by 1 second, so that the timing time needs to be subtracted by 1 second to obtain the updated timing time.
The method comprises the steps that the system time of the robot and the system time of a server are asynchronous due to operation differences of hardware such as a system CPU of the robot and the like, and further the timing time of a task timer of the robot is inaccurate.
In another embodiment of the present disclosure, the execution subject may be a robot cluster, where the robot cluster includes a plurality of robots, and each robot in the robot cluster executes a task to be executed issued by the server according to the method of the present disclosure. When the server issues the same task to be executed to each robot (the corresponding task start time is also the same), by using the method disclosed by the present disclosure, the local time of each robot and the system time of the server can both have higher synchronicity, and further the local time of each robot also has higher synchronicity, and the timing time of each robot is also updated according to the method disclosed by the present disclosure, and the accuracy of the updated timing time of each robot is also higher, so that each robot can implement high-synchronicity execution of the task to be executed when executing the same task to be executed. Compared with the prior art, the task synchronism of each robot is ensured through the high-precision hardware clock component, the cost required by the hardware clock component of the robot is saved, and the cost of the robot is reduced.
When the dance robot is specifically implemented, the task to be executed can be dance, cargo handling or chorus and the like, for example, the robot cluster performs group dance, and the dance actions of the robots can be guaranteed to have higher consistency, so that the dance appreciation of the robot cluster is improved.
Optionally, the updated timing time includes updated timing times corresponding to different timers one to one; in response to the timing of the task timer reaching the updated timing time, controlling the robot to execute the task to be executed, including: and controlling the robot to execute the task to be executed when any one of the plurality of updated timing times is reached first.
Illustratively, the plurality of task timers includes at least a system alarm timer of the robot and a thread scheduling dependent timer of the robot. The system alarm timer of the robot may refer to the AlarmManager timer of the system alarm of the robot, and the thread scheduling-dependent timer of the robot may refer to the RxJava timer. The system alarm timer is a robot system level timer and the thread scheduling dependent timer is an application level timer.
The plurality of task timers correspond to the updated timing time one by one, and when any one updated timing time arrives first, the robot is directly controlled to execute the task to be executed no matter whether other updated timing times arrive or not.
In the embodiment of the disclosure, the timing is performed by a plurality of different timers, so that the timing accuracy is higher.
Optionally, the updated timing time includes a plurality of updated timing times corresponding to a plurality of tasks to be executed one to one; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time, wherein the task to be executed comprises the following steps: and aiming at each task to be executed, when the updated timing time corresponding to the task to be executed arrives, if the task to be executed before the task to be executed is not completed, keeping the robot to continuously execute the previous task to be executed, and controlling the robot to start executing the task to be executed. .
The server obtains a task file based on the requirement or operation of a user, wherein the task file can be a file in an XML format, the task file can comprise a plurality of lists, and each list item can contain a task name of a task to be executed and a corresponding task start time. And traversing all lists in the task file by the robot to obtain each task to be executed and corresponding task starting time, and obtaining timing time corresponding to each task according to the local time and the task starting time corresponding to each task.
Optionally, the updated timing time includes a plurality of updated timing times corresponding to a plurality of tasks to be executed one to one; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time, wherein the task to be executed comprises the following steps: and for each task to be executed, when the updated timing time corresponding to the task to be executed reaches, if the task to be executed before the task to be executed is not finished, keeping the robot to continue executing the previous task to be executed, and controlling the robot to start executing the task to be executed.
For one robot, the server may issue multiple tasks to be performed, which may be continuous in time.
For example, the number of the tasks to be executed includes three, the task ending time of the first task to be executed is the starting time of the second task to be executed, and the task ending time of the second task to be executed is the task starting time of the third task to be executed.
When each updated timing time arrives, if the previous task to be executed is not completed, the previous task to be executed is continuously executed, and the task to be executed corresponding to each updated timing time is started to be executed, so that the condition that the time of all the subsequent tasks to be executed is inaccurate due to the time lag of the previous task to be executed is avoided.
In another embodiment of the present invention, when the execution subject is a robot cluster, the difference of hardware difference of each robot may cause the difference of the starting time and the execution process of the task to be executed, such as a hand-lifting action, some robots require 2000 ms, and some robots require 2200 ms. For a task to be executed which may have an error, the task to be executed may be split into a plurality of small tasks to be executed, and each small task to be executed serves as a separate task. When the robot executes one task to be executed, the previous task to be executed needs to be executed in parallel forcibly even if the previous task to be executed is not executed completely.
For example, the tasks to be performed are: and advancing by one meter, then lifting the right hand, and if a certain robot in the robot cluster lags behind by 5cm, when the updated timing time of the new task to be executed of lifting the right hand arrives, continuing to execute the action of advancing by one meter and simultaneously executing the action of lifting the right hand.
By the mode, for the total task comprising a plurality of tasks to be executed, even if the execution time differences caused by the hardware differences of the robots are different, the differences can be furthest broken in.
In another embodiment of the present invention, the contents of the task file may be written as follows:
<actionarray robotid="355929090035727"robottype="ginger"repeat="daily">
<action index="1">
<name>cloudminds/hello</name>
<start>2021120917442700</start>
</action>
<action index="2">
<name>cloudminds/naughty</name>
<start>2021120917443400</start>
</action>
<action index="3">
<name>cloudminds/bye</name>
<start>2021120917444400</start>
</action>
</actionarray>
by adopting the technical scheme, the local time of the robot is updated through the system time sent by the server according to the preset period, and when the local time is updated within the set timing time according to the local time and the task starting time, the timing time of the task timer is updated according to the updated local time, so that the accuracy of the updated timing time of the robot is ensured to be higher, therefore, under the condition of not setting a precise hardware clock component, the accuracy of the timing time of the robot is still higher, and the hardware cost of the robot is reduced.
It will be appreciated that for simplicity of explanation, the above-described method embodiments are presented as a series of interrelated acts, but those skilled in the art will appreciate that the present disclosure is not limited by the order of acts described above. Further, those skilled in the art will also appreciate that the embodiments described above are preferred embodiments and that the steps involved are not necessarily required for the present disclosure.
Referring to fig. 2, fig. 2 is a schematic structural diagram of a control device of a robot according to an embodiment of the present disclosure, where the control device includes:
a first updating module 201, configured to request the server to send the system time of the server according to a preset period, and update the local time of the robot according to the system time;
the setting module 202 is configured to set a timing time of a task timer in response to a task to be executed of the robot and a task start time corresponding to the task to be executed, which are acquired from the server, where the timing time of the task timer is determined according to a difference between the task start time and a local time of the robot;
a second updating module 203, configured to update the timing time of the task timer based on the updated local time in response to an update to the local time occurring within the timing time;
And the control module 204 is configured to control the robot to execute the task to be executed in response to that the timing of the task timer reaches the updated timing time.
Optionally, the first updating module 201 is specifically configured to, before the task to be executed of the robot and the task start time corresponding to the task to be executed are acquired from the server, request the server to send the system time of the server according to a first preset period, and update the local time of the robot according to the system time; after the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the server is requested to send the system time of the server according to a second preset period, the local time of the robot is updated according to the system time, wherein the second preset period is smaller than the first preset period, and the duration of the timing time is larger than the second preset period.
Optionally, the first updating module 201 is further configured to request the server to send the system time of the server according to a preset period; in response to the system time obtained by the server, recording a second difference value between the system time and the current starting time of the robot under the condition that a first difference value between the system time and the local time of the robot at the current moment is larger than a preset threshold value; and updating the local time of the robot according to the second difference and the real-time changed starting time of the robot.
Optionally, the updated timing time includes updated timing times corresponding to different timers one to one;
the control module 204 is further configured to control the robot to execute the task to be executed when any one of the plurality of updated timing times arrives first.
Optionally, the updated timing time includes a plurality of updated timing times corresponding to a plurality of tasks to be executed one to one;
the control module 204 is further configured to, for each task to be executed, when the updated timing time corresponding to the task to be executed reaches, if a task to be executed before the task to be executed is not completed, keep the robot to continue executing the previous task to be executed, and control the robot to start executing the task to be executed.
Optionally, the setting module 202 is specifically configured to, in response to acquiring a task file from a server, extract a task to be executed and task start time corresponding to the task to be executed from the task file, where the task file is a file in an XML format; and setting the timing time of the task timer according to the difference between the task starting time and the local time of the robot.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Referring to fig. 3, fig. 3 is a schematic structural diagram of a control device of another robot according to an embodiment of the present disclosure, where the control device 300 of the robot may implement part or all of the robot by software, hardware, or a combination of the two.
As shown in fig. 3, the control device 300 of the robot may include: a processor 301, a memory 302. The control device 300 of the robot may further comprise one or more of a multimedia component 303, an input/output (I/O) interface 304, and a communication component 305.
The processor 301 is configured to control the overall operation of the control device 300 of the robot, so as to complete all or part of the steps in the control method of the robot. The memory 302 is used to store various types of data to support the operation of the control device 300 of the robot, which may include, for example, instructions for any application or method operating on the control device 300 of the robot, as well as application-related data, such as contact data, messages sent and received, pictures, audio, video, and so forth. The Memory 302 may be implemented by any type of volatile or non-volatile Memory device or combination thereof, such as Static Random Access Memory (SRAM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (ROM), magnetic Memory, flash Memory, magnetic disk or optical disk. The multimedia components 303 may include a screen and an audio component. Wherein the screen may be, for example, a touch screen and the audio component is used for outputting and/or inputting audio signals. For example, the audio component may include a microphone for receiving external audio signals. The received audio signal may further be stored in the memory 302 or transmitted through the communication component 305. The audio assembly also includes at least one speaker for outputting audio signals. The I/O interface 304 provides an interface between the processor 301 and other interface modules, such as a keyboard, mouse, buttons, etc. These buttons may be virtual buttons or physical buttons. The communication module 305 is used for wired or wireless communication between the control device 300 of the robot and other devices. Wireless Communication, such as Wi-Fi, bluetooth, Near Field Communication (NFC), 2G, 3G, NB-IOT, eMTC, or other 5G, etc., or a combination of one or more of them, which is not limited herein. The corresponding communication component 305 may therefore include: Wi-Fi module, Bluetooth module, NFC module, etc.
In an exemplary embodiment, the control Device 300 of the robot may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components, and is used to perform the above-mentioned control method of the robot.
In another exemplary embodiment, there is also provided a computer-readable storage medium including program instructions, which when executed by a processor, implement the steps of the control method of the robot described above. For example, the computer readable storage medium may be the memory 302 including the program instructions executable by the processor 301 of the robot control device 300 to perform the robot control method described above.
Referring to fig. 4, fig. 4 is a schematic structural diagram of a robot cluster provided in the embodiment of the present disclosure. The robot cluster 400 comprises a server 401 and at least two robots 402, wherein,
The robot 402 is used for requesting the server to send the system time of the server according to a preset period and updating the local time of the robot according to the system time; setting the timing time of a task timer in response to the task to be executed of the robot and the task starting time corresponding to the task to be executed, which are acquired from the server, wherein the timing time of the task timer is determined according to the difference between the task starting time and the local time of the robot; updating the timing time of the task timer based on the updated local time in response to the update to the local time occurring within the timing time; and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time.
Optionally, the robot 402 is further configured to request the server to send the system time of the server according to a first preset period before the task to be executed of the robot and the task start time corresponding to the task to be executed are acquired from the server, and update the local time of the robot according to the system time; after the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the server is requested to send the system time of the server according to a second preset period, the local time of the robot is updated according to the system time, wherein the second preset period is smaller than the first preset period, and the duration of the timing time is larger than the second preset period.
Optionally, the robot 402 is further configured to request the server to send the system time of the server according to a preset period; in response to the system time obtained by the server, recording a second difference value between the system time and the current starting time of the robot under the condition that a first difference value between the system time and the local time of the robot at the current moment is greater than a preset threshold value; and updating the local time of the robot according to the second difference value and the real-time changed starting-up time of the robot.
Optionally, the updated timing time includes updated timing times corresponding to different timers one to one;
the robot 402 controls the robot to execute the task to be executed when any one of the plurality of updated timing times arrives first.
Optionally, the updated timing time includes a plurality of updated timing times corresponding to a plurality of tasks to be executed one to one;
the robot 402 is further configured to, for each to-be-executed task, when the updated timing time corresponding to the to-be-executed task arrives, if a task to be executed before the to-be-executed task is not completed, keep the robot continuing to execute the previous to-be-executed task, and control the robot to start executing the to-be-executed task.
Optionally, the robot 402 is further configured to, in response to acquiring a task file from the server, extract a task to be executed and a task start time corresponding to the task to be executed from the task file, where the task file is a file in an XML format; and setting the timing time of the task timer according to the difference between the task starting time and the local time of the robot.
With regard to the system in the above-described embodiment, the specific manner in which each part performs the operation has been described in detail in the embodiment related to the method, and will not be described in detail here.
Referring to fig. 5, fig. 5 is a schematic structural diagram of a server provided in an embodiment of the present disclosure, for example, the server 500 may be provided as a server. Referring to fig. 5, the server 500 includes a processor 522, which may be one or more in number, and a memory 532 for storing computer programs executable by the processor 522. The computer programs stored in memory 532 may include one or more modules that each correspond to a set of instructions. Further, the processor 522 may be configured to execute the computer program to perform the control method of the robot described above.
Additionally, the server 500 may also include a power component 526 and a communication component 550, the power component 526 may be configured to perform power management of the server 500, and the communication component 550 may be configured to enable communication, e.g., wired or wireless communication, of the server 500. The server 500 may also include input/output (I/O) interfaces 558. The Server 500 may operate based on an operating system, such as Windows Server, stored in the memory 532 TM,Mac OS XTM,UnixTM,LinuxTMAnd so on.
In another exemplary embodiment, there is also provided a computer-readable storage medium including program instructions, which when executed by a processor, implement the steps of the control method of the robot described above. For example, the computer readable storage medium may be the above-mentioned memory 532 including program instructions executable by the processor 522 of the server 500 to perform the above-mentioned control method of the robot.
In another exemplary embodiment, a computer program product is also provided, which comprises a computer program executable by a programmable apparatus, the computer program having code portions for performing the above-mentioned control method of a robot when executed by the programmable apparatus.
The preferred embodiments of the present disclosure are described in detail with reference to the accompanying drawings, however, the present disclosure is not limited to the specific details of the above embodiments, and various simple modifications may be made to the technical solution of the present disclosure within the technical idea of the present disclosure, and these simple modifications all belong to the protection scope of the present disclosure.
It should be noted that the various features described in the above embodiments may be combined in any suitable manner without departing from the scope of the invention. In order to avoid unnecessary repetition, various possible combinations will not be separately described in this disclosure.
In addition, any combination of various embodiments of the present disclosure may be made, and the same should be considered as the disclosure of the present disclosure, as long as it does not depart from the spirit of the present disclosure.

Claims (11)

1. A method of controlling a robot, the method comprising:
requesting a server to send the system time of the server according to a preset period, and updating the local time of the robot according to the system time;
setting the timing time of a task timer in response to the task to be executed of the robot and the task starting time corresponding to the task to be executed, which are acquired from the server, wherein the timing time of the task timer is determined according to the difference between the task starting time and the local time of the robot;
in response to an update to the local time occurring within the timed time, updating the timed time of the task timer based on the updated local time;
and controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time.
2. The method for controlling a robot according to claim 1, wherein the requesting a server to transmit a system time of the server according to a preset period and updating a local time of the robot according to the system time comprises:
Requesting a server to send system time of the server according to a first preset period before a task to be executed of the robot and task start time corresponding to the task to be executed are obtained from the server, and updating local time of the robot according to the system time;
after the task to be executed of the robot and the task start time corresponding to the task to be executed are obtained from the server, the server is requested to send the system time of the server according to a second preset period, and the local time of the robot is updated according to the system time, wherein the second preset period is smaller than the first preset period, and the duration of the timing time is larger than the second preset period.
3. The method of claim 1, wherein the requesting a server to transmit a system time of the server according to a preset period and updating the local time of the robot according to the system time comprises:
requesting the server to send the system time of the server according to a preset period;
in response to the system time obtained by the server, recording a second difference value between the system time and the current starting time of the robot under the condition that a first difference value between the system time and the local time of the robot at the current moment is larger than a preset threshold value;
And updating the local time of the robot according to the second difference value and the real-time changed starting-up time of the robot.
4. The control method of a robot according to claim 1, wherein the updated timing time includes updated timing times corresponding to different ones of the plurality of timers on a one-to-one basis; the responding to the counting of the task timer reaching the updated timing time, and controlling the robot to execute the task to be executed, including:
and when any one of the plurality of updated timing times arrives first, controlling the robot to execute the task to be executed.
5. A method of controlling a robot as claimed in claim 4, wherein the plurality of task timers comprises at least a system alarm timer of the robot and a thread scheduling dependent timer of the robot.
6. The control method of a robot according to claim 1, wherein the updated timing time includes a plurality of updated timing times in one-to-one correspondence with a plurality of tasks to be performed; the controlling the robot to execute the task to be executed in response to the counting of the task timer reaching the updated timing time includes:
And for each task to be executed, when the updated timing time corresponding to the task to be executed reaches, if the task to be executed before the task to be executed is not completed, keeping the robot to continuously execute the task to be executed before, and controlling the robot to start executing the task to be executed.
7. The method according to any one of claims 1 to 6, wherein the setting of the timing time of the task timer in response to the task to be executed of the robot and the task start time corresponding to the task to be executed being acquired from the server includes:
in response to the task file acquired from the server, extracting the task to be executed and the task start time corresponding to the task to be executed from the task file, wherein the task file is a file in an XML format;
and setting the timing time of the task timer according to the difference between the task starting time and the local time of the robot.
8. A control apparatus of a robot, characterized in that the apparatus comprises:
the first updating module is used for requesting the server to send the system time of the server according to a preset period and updating the local time of the robot according to the system time;
The setting module is used for responding to the task to be executed of the robot and the task starting time corresponding to the task to be executed, which are obtained from the server, and setting the timing time of a task timer, wherein the timing time of the task timer is determined according to the difference value between the task starting time and the local time of the robot;
a second updating module, configured to update the timing time of the task timer based on the updated local time in response to the update to the local time occurring within the timing time;
and the control module is used for responding to the counting of the task timer to the updated timing time and controlling the robot to execute the task to be executed.
9. A control device for a robot, comprising:
a memory having a computer program stored thereon;
a processor for executing the computer program in the memory to carry out the steps of the method of any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a computer program which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
11. A robot cluster is characterized by comprising a server and at least two robots, wherein the at least two robots are in communication connection with the server; wherein each of the robots is capable of performing the method of any one of claims 1-7.
CN202210168892.0A 2022-02-23 2022-02-23 Robot control method and device, storage medium and robot cluster Pending CN114679481A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210168892.0A CN114679481A (en) 2022-02-23 2022-02-23 Robot control method and device, storage medium and robot cluster
PCT/CN2023/077868 WO2023160608A1 (en) 2022-02-23 2023-02-23 Robot control method and apparatus, and storage medium and robot cluster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210168892.0A CN114679481A (en) 2022-02-23 2022-02-23 Robot control method and device, storage medium and robot cluster

Publications (1)

Publication Number Publication Date
CN114679481A true CN114679481A (en) 2022-06-28

Family

ID=82071737

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210168892.0A Pending CN114679481A (en) 2022-02-23 2022-02-23 Robot control method and device, storage medium and robot cluster

Country Status (2)

Country Link
CN (1) CN114679481A (en)
WO (1) WO2023160608A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116069475A (en) * 2023-02-27 2023-05-05 麦岩智能科技(北京)有限公司 Timing task processing method, storage medium and equipment
WO2023160608A1 (en) * 2022-02-23 2023-08-31 达闼机器人股份有限公司 Robot control method and apparatus, and storage medium and robot cluster

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105276917A (en) * 2015-11-20 2016-01-27 Tcl智能科技(合肥)有限公司 Control method and system for intelligent refrigerator
CN109560889A (en) * 2018-11-09 2019-04-02 福建福诺移动通信技术有限公司 A method of realizing App and server-side time synchronization
CN109976243A (en) * 2017-12-28 2019-07-05 深圳市优必选科技有限公司 Robot synchronisation control means, device and equipment
WO2019242131A1 (en) * 2018-06-19 2019-12-26 佛山市顺德区美的电热电器制造有限公司 Clock synchronization method and device, and computer storage medium
CN110850737A (en) * 2019-11-12 2020-02-28 上海庆科信息技术有限公司 Socket and timing method, system and computer readable storage medium
CN111767128A (en) * 2020-06-23 2020-10-13 北京字节跳动网络技术有限公司 Method and device for executing timing task
CN112346512A (en) * 2020-11-09 2021-02-09 北京沃东天骏信息技术有限公司 Time synchronization method and device
CN113119117A (en) * 2021-03-22 2021-07-16 深圳市优必选科技股份有限公司 Robot control method, controller, robot and control system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678779A (en) * 2017-09-27 2018-02-09 网宿科技股份有限公司 A kind of timed task performs method and electronic equipment
CN110932839B (en) * 2018-09-20 2023-09-22 中兴通讯股份有限公司 Network card, time synchronization method, equipment and computer storage medium
US10903924B2 (en) * 2019-02-07 2021-01-26 International Business Machines Corporation Setting primary reference time of server time protocol facility of a coordinated timing network to a precision-time-protocol source
CN114679481A (en) * 2022-02-23 2022-06-28 达闼机器人股份有限公司 Robot control method and device, storage medium and robot cluster

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105276917A (en) * 2015-11-20 2016-01-27 Tcl智能科技(合肥)有限公司 Control method and system for intelligent refrigerator
CN109976243A (en) * 2017-12-28 2019-07-05 深圳市优必选科技有限公司 Robot synchronisation control means, device and equipment
WO2019242131A1 (en) * 2018-06-19 2019-12-26 佛山市顺德区美的电热电器制造有限公司 Clock synchronization method and device, and computer storage medium
CN109560889A (en) * 2018-11-09 2019-04-02 福建福诺移动通信技术有限公司 A method of realizing App and server-side time synchronization
CN110850737A (en) * 2019-11-12 2020-02-28 上海庆科信息技术有限公司 Socket and timing method, system and computer readable storage medium
CN111767128A (en) * 2020-06-23 2020-10-13 北京字节跳动网络技术有限公司 Method and device for executing timing task
CN112346512A (en) * 2020-11-09 2021-02-09 北京沃东天骏信息技术有限公司 Time synchronization method and device
CN113119117A (en) * 2021-03-22 2021-07-16 深圳市优必选科技股份有限公司 Robot control method, controller, robot and control system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
罗霄等: "《工业机器人技术基础与应用分析》", 北京:北京理工大学出版社 , pages: 177 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023160608A1 (en) * 2022-02-23 2023-08-31 达闼机器人股份有限公司 Robot control method and apparatus, and storage medium and robot cluster
CN116069475A (en) * 2023-02-27 2023-05-05 麦岩智能科技(北京)有限公司 Timing task processing method, storage medium and equipment

Also Published As

Publication number Publication date
WO2023160608A1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
CN114679481A (en) Robot control method and device, storage medium and robot cluster
WO2019237586A1 (en) Method and apparatus for managing scheduled tasks, computer device and storage medium
US20200192724A1 (en) Resource scheduling method, scheduling server, cloud computing system, and storage medium
US20190272193A1 (en) Responsive application task management
US20140095929A1 (en) Interface for resolving synchronization conflicts of application states
EP2222003A2 (en) Field control system
EP2866143A1 (en) Graceful shutdown method and system for virtual system
CN103634375A (en) Method, device and equipment for cluster node expansion
US20150089510A1 (en) Device, system, apparatus, method and program product for scheduling
JP2021197153A (en) Method and apparatus for recognizing word slot, electronic apparatus, storage medium and computer program
CN107704550A (en) File migration method, apparatus and computer-readable recording medium
CN111158867A (en) Time synchronization processing method, thread scheduling device and electronic equipment
CN110377331A (en) Monitoring method, device, equipment and the storage medium of release application program
CN110809041B (en) Data synchronization method and device, electronic equipment and storage medium
CN107678871A (en) A kind of electronic equipment starting-up method and electronic equipment
CN109660310B (en) Clock synchronization method and device, computing equipment and computer storage medium
CN115640280A (en) Data migration method and device
CN112667255B (en) Updating method, updating device, electronic equipment and storage medium
US10397772B2 (en) Nomination of a primary cell phone from a pool of cell phones
US11386043B2 (en) Method, device, and computer program product for managing snapshot in application environment
CN113191136A (en) Data processing method and device
CN109510682B (en) Method, device, terminal and storage medium for synchronizing BMC (baseboard management controller) clocks of pooling server system
CN113190532A (en) Data processing method, device, equipment and computer readable storage medium
CN109274451B (en) Time acquisition method, device and equipment
RU2520942C2 (en) Method of computer-aided power system operation and computer-aided power system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination