CN117301060A - Motion control method, system, device, robot and storage medium - Google Patents

Motion control method, system, device, robot and storage medium Download PDF

Info

Publication number
CN117301060A
CN117301060A CN202311332793.2A CN202311332793A CN117301060A CN 117301060 A CN117301060 A CN 117301060A CN 202311332793 A CN202311332793 A CN 202311332793A CN 117301060 A CN117301060 A CN 117301060A
Authority
CN
China
Prior art keywords
motion
robot
track
data
movement
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
CN202311332793.2A
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 CN202311332793.2A priority Critical patent/CN117301060A/en
Publication of CN117301060A publication Critical patent/CN117301060A/en
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

The embodiment of the invention provides a motion control method, a motion control system, a motion control device, a robot and a storage medium, wherein the motion control method comprises the following steps: the robot receives first motion data corresponding to the current control period, controls the robot to move according to the first motion data, and can generate an actual motion track in the motion process. The robot may compare the actual motion trajectory with the reference motion trajectory corresponding to the first motion data to obtain a trajectory deviation. And when the next control period is reached, the robot controls the robot to move according to the track deviation. The motion track formed by the robot motion can comprise a motion path generated by the movement of the robot and/or an action track formed by the robot completing the preset action. After the method is used, the robot can make up track deviation generated in the current control period in the next control period, so that the accuracy of the motion gesture or position of the robot is ensured, and the quality of the robot executing tasks is improved.

Description

Motion control method, system, device, robot and storage medium
Technical Field
The present invention relates to the field of robots, and in particular, to a motion control method, system, apparatus, robot, and storage medium.
Background
Intelligent robots can accomplish a variety of tasks in different areas. Such as a humanoid robot, may perform dance tasks to entertain the user. When the plurality of humanoid robots perform group dance, the plurality of humanoid robots may have the same dance motion. In the dance process, the robot can generate not only position change but also motion change, and the pose change can be expressed in the form of a motion track.
However, in practice, considering the mechanical structure of the robot itself, the material of the ground on which the robot is located, and other factors, when the same dance motion is performed, the actual motion trajectories generated by different robots may deviate from the standard dance motion, thereby causing irregular dance.
Therefore, how to improve the deviation of the motion trail, so as to ensure the execution quality of the task, is a problem to be solved.
Disclosure of Invention
In view of the above, the embodiments of the present invention provide a motion control method, system, device, robot and storage medium for improving the deviation of motion trajectory to ensure the execution quality of task.
In a first aspect, an embodiment of the present invention provides a motion control method, applied to a robot, including:
Receiving first motion data corresponding to a current control period;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
In a second aspect, an embodiment of the present invention provides a motion control method, applied to a cloud server, including:
transmitting first motion data corresponding to a current control period to the robot;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and determining second motion data sent to the robot in the next control period according to the track deviation, wherein the motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of preset actions of the robot.
In a third aspect, an embodiment of the present invention provides a robot, including: the system comprises a local controller, a motion structure and a track calibration module;
the local controller is used for receiving first motion data corresponding to a current control period; controlling the motion of the motion structure according to the first motion data to generate an actual motion trail; controlling the motion of the motion structure in the next control period according to the track deviation obtained by the track calibration module;
the track calibration module is configured to determine the track deviation between the actual motion track and a reference motion track corresponding to the first motion data, where the motion track includes a motion track generated by the movement of the robot and/or an action track formed by the robot completing a preset action.
In a fourth aspect, embodiments of the present invention provide a motion control system comprising: cloud server and robot;
the cloud server is used for sending first motion data corresponding to the current control period;
the robot is used for controlling the robot to move according to the first movement data so as to generate an actual movement track; and controlling the movement of the robot in the next control period according to the track deviation, wherein the track deviation comprises the deviation between the actual movement track and a reference movement track corresponding to the first movement data, and the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of preset actions by the robot.
In a fifth aspect, an embodiment of the present invention provides a motion control apparatus, including:
the receiving module is used for receiving first motion data corresponding to the current control period;
the deviation determining module is used for determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
the control module is used for controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement path generated by the movement of the robot and/or an action path formed by the completion of a preset action of the robot.
In a sixth aspect, an embodiment of the present invention provides another motion control apparatus, including:
the sending module is used for sending the first motion data corresponding to the current control period to the robot;
the track determining module is used for determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and the data determining module is used for determining second motion data sent to the robot in the next control period according to the track deviation, wherein the motion track comprises a moving path generated by the movement of the robot and/or an action path formed by the completion of a preset action of the robot.
In a seventh aspect, embodiments of the present invention provide a non-transitory machine-readable storage medium having stored thereon executable code, which when executed by a processor of an electronic device, causes the processor to implement at least the motion control method according to the first or second aspects.
According to the motion control method provided by the embodiment of the invention, the robot receives the first motion data corresponding to the current control period, controls the robot to move according to the first motion data, and can generate an actual motion track in the motion process. The robot may compare the actual motion trajectory with a standard motion trajectory that the robot should have according to the first motion data, that is, a reference motion trajectory corresponding to the first motion data, so as to obtain a trajectory deviation. When the next control period is reached, the robot can control the robot movement according to the track deviation. The motion track formed by the motion of the robot can comprise a motion track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
In the current control period, the motion gesture and/or the motion position of the robot are inaccurate due to the deviation of the motion track of the robot, so that the quality of the robot for executing tasks is affected. After the method is used, the robot determines the track deviation generated in the current control period and can make up the track deviation in the next control period, so that the action and the position of the robot are ensured to be consistent with the standard action, and the quality of the robot executing the task is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions of the prior art, the following description will briefly explain the drawings used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings can be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a motion control system according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of another motion control system according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a robot motion location according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a motion control system according to an embodiment of the present invention;
FIG. 5 is a flow chart of a motion control method according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a robot according to an embodiment of the present invention;
FIG. 7 is a flowchart of another motion control method according to an embodiment of the present invention;
FIG. 8 is a schematic diagram of a motion control method and system applied to a dance robot according to an embodiment of the present invention;
FIG. 9 is a schematic diagram of a motion control apparatus according to an embodiment of the present invention;
fig. 10 is a schematic structural diagram of an electronic device corresponding to the motion control apparatus provided in the embodiment shown in fig. 9;
FIG. 11 is a schematic diagram of another motion control apparatus according to an embodiment of the present invention;
fig. 12 is a schematic structural diagram of an electronic device corresponding to the motion control apparatus provided in the embodiment shown in fig. 11.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments of the present invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The terminology used in the embodiments of the invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used in this application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise, the "plurality" generally includes at least two, but does not exclude the case of at least one.
It should be understood that the term "and/or" as used herein is merely one relationship describing the association of the associated objects, meaning that there may be three relationships, e.g., a and/or B, may represent: a exists alone, A and B exist together, and B exists alone. In addition, the character "/" herein generally indicates that the front and rear associated objects are an "or" relationship.
The words "if", as used herein, may be interpreted as "at … …" or "at … …" or "in response to a determination" or "in response to an identification", depending on the context. Similarly, the phrase "if determined" or "if identified (stated condition or event)" may be interpreted as "when determined" or "in response to a determination" or "when identified (stated condition or event)" or "in response to an identification (stated condition or event), depending on the context.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a product or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such product or system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a commodity or system comprising such elements.
Before describing the motion control method and system provided by the following embodiments of the present invention, the background of the use of the present solution may be described:
as mentioned in the background art, a plurality of robots may perform a dance task, i.e., the robots may control their own movement structures to move to form dance motions during dance. The motion structure of the robot may include any movable parts such as various joints, chassis, etc. of the robot. And during dance, the movements of the robot may form a movement trajectory, which may include not only changes in the position of the robot, but also changes in the movements of the robot. For example, any one of the plurality of robots may be moved horizontally from the a position to the B position and the arm may be changed from the drooping state to the lifting state during a dance motion. In this case, the movement locus generated by the robot may include a movement locus generated by moving from the a position to the B position, or may include an operation locus formed by the robot arm completing the lifting operation.
In the above case, considering the moving structure of the robot or the ground material where the robot is located, for example, the robot 1 among the plurality of robots is an old robot with inflexible joints, and the robot performs dance on smooth tiles. Robot 2 is a new robot with flexible joints that performs dance on rough carpets. In the process of completing the same dance motion, the robot 1 may have an abnormal lifting motion of the arm due to inflexibility of joints, that is, the motion track has a deviation from the track corresponding to the standard dance motion. Similarly, the robot 2 may move horizontally from the position a to the position B' due to the rough ground, i.e., the movement path deviates from the trajectory corresponding to the standard dance motion. Both of these deviations can lead to irregular dance. More specifically, when the motion trajectory is deviated, the dance motion is irregular; when the movement track has deviation, the dance formation is irregular. Moreover, the irregular dancing formation also easily causes collision among robots, and serious damage to the robots can be caused.
In addition, in addition to the plurality of robots performing the task of group dance, the consistency of the movements of the respective robots is required, and optionally, the consistency of the movements of the plurality of mechanical arms on the industrial assembly line is also required to complete the industrial production. However, the invention is not limited to the task executed by the robot and the type of the robot, and the method and the system provided by the embodiments of the invention can be used when the consistency of the actions of a plurality of robots is required to be ensured, so that the quality of the task is ensured.
In addition to the above-described case of completing a task by ensuring consistency of motions of a plurality of robots, when an individual robot performs a task, a deviation of a motion trajectory also affects quality of the task. Such as a separate robot may perform the dance-independent task. At this time, when the movement space of the robot is limited, deviation of the movement track and/or the movement track of the robot may cause the robot to collide with the boundary of the movement space, so that the dance movement is not standard and even the robot may be damaged.
In addition, the above-mentioned problems may exist for any robot moving in a limited movement space in addition to the above-mentioned dance tasks, and the methods provided in the following embodiments of the present invention may be used at this time to secure task quality.
Based on the above description, some embodiments of the present invention are described in detail below with reference to the accompanying drawings. In the case where there is no conflict between the embodiments, the following embodiments and features in the embodiments may be combined with each other. In addition, the sequence of steps in the method embodiments described below is only an example and is not strictly limited.
To facilitate solution understanding, control of the robot actions may be described first from a system perspective.
Fig. 1 is a schematic structural diagram of a motion control system according to an embodiment of the present invention. The system may include a control server and a robot.
Wherein the robot in the system may be at least one. The control server may be deployed at the cloud end and thus may also be referred to as a cloud end server. The following embodiments are also described in terms of control server nomenclature.
The controller server in the system can continuously send motion data to the robot so that the robot can control the robot to continuously move according to the motion data issued by the control server, and therefore the robot can complete tasks. As described above, the movement of the robot may change in position and/or change in motion.
Alternatively, the actions to be completed and the positions to be reached in the process of performing the task by the robot can be pre-programmed into a section of skeleton animation. The control server may periodically extract motion data from the skeletal animation and periodically send the motion data to the robot. If the pose of the robot after the robot is controlled to move according to the motion data is the same as the pose described by the motion data, the pose of the robot is standard and has no deviation, and the execution quality of the task can be ensured. If the robot has a pose that is different from the pose described by the motion data, it is indicated that the position of the robot is deviated, at which point the system provided by the embodiment shown in fig. 1 may be used to compensate for the deviation. Alternatively, the period of the control server extracting the motion data corresponds to 100Hz.
The operation of the system can be described as:
the control server can send first motion data corresponding to the control period to the robot in the current control period, and the robot can control the motion of the robot according to the first motion data after receiving the first motion data, more specifically, the motion structure of the robot is controlled to move so as to form an actual motion trail corresponding to the first motion data. If there is a track deviation between the actual motion period and the reference track corresponding to the first motion data, the robot can control its motion in the next control period according to the track deviation, that is, the robot can make up the track deviation generated in the current control period in the next control period.
Optionally, the track deviation may specifically include a movement track generated by movement of the robot and/or an action track formed by the robot completing a preset action. The trajectory deviation may reflect that the actual pose of the robot does not correspond to the reference pose corresponding to the first motion data.
Alternatively, the first motion data may be included in a first control instruction generated by the control server, and the second motion data corresponding to the next control period may be included in a second control instruction. The robot may control its own motion by executing the control instructions. Alternatively, the robot may control the movement of the robot in the next control period according to this trajectory deviation and the second movement data transmitted by the control server.
Wherein the correspondence between the motion data and the control period can be considered as: the control server extracts motion data which is needed to be executed by the robot in a control period from the bone animation. The motion data corresponding to the subsequent control period is not necessarily all the motion data transmitted to the robot by the control server in the control period. This section can also be understood in connection with the description of the embodiment shown in fig. 7.
In this embodiment, the control server issues first motion data corresponding to the current control period, and the robot controls itself to move according to the first motion data, so that an actual motion track can be generated in the motion process. Then in the next control period, the robot can control the robot to move according to the track deviation between the actual motion track and the reference motion track corresponding to the first motion data.
In the current control period, the deviation of the motion trail of the robot can cause inaccurate motion gesture and/or motion position of the robot, thereby affecting the quality of the robot executing tasks. After the method is used, the robot can compensate the track deviation generated in the previous control period in the next control period, so that the accuracy of the motion gesture or position of the robot is ensured, and the quality of the robot executing tasks is improved. When the robot specifically executes the aforementioned group dance task, the robot can make the movements of the robot tidy and uniform after the track deviation is compensated according to the embodiment, and the ornamental value is ensured.
When the control server is deployed at the cloud, the robot motion is actually controlled in a side-cloud cooperative mode in the embodiment. When the control server extracts motion data from the skeletal animation, the present embodiment is actually robot motion control implemented based on digital twin technology.
In addition, since the control periods mentioned in the following embodiments of the present invention may be a short period, such as 100Hz mentioned above, real-time adjustment of the motion gesture or position of the robot can be achieved by using the control methods provided in the embodiments of the present invention.
In the embodiment shown in fig. 1, determining the track deviation between the actual motion track and the reference motion track is a key to compensating for the pose deviation of the robot, and alternatively, the track deviation may be specifically determined by a control server or the robot in the system.
Fig. 2 is a schematic diagram of another motion control system according to an embodiment of the present invention when the trajectory deviation is determined by the robot. The system comprises: and controlling the server and the robot. The robot may in particular further comprise a sensor, a trajectory calibration module and a first local controller.
The first local controller of the robot may receive first motion data corresponding to the current control period issued by the control server in the current control period, and control the robot to move to generate an actual motion trajectory. Then, a track calibration module in the robot can obtain track deviation by comparing the actual motion track with the reference motion track.
Alternatively, the two motion trajectories may be fitted by a robot. The robot can acquire sensing data by using the sensor configured by the robot, and the actual motion trail is fitted according to the acquired sensing data. Optionally, the sensors may include, inertial measurement units (Inertial Measurement Unit, IMU), vision sensors, laser sensors, and the like. Similarly, the robot may also fit the first motion data sent by the control server to obtain a reference motion track.
The sensing data collected by the IMU may specifically be motion gesture data, and the motion gesture of the robot may be determined using the gesture data. The sensing data collected by the vision sensor can be specifically image data, the image data is analyzed based on an instant positioning and map construction (Simultaneous Localization and Mapping, SLAM for short), the robot can be accurately positioned, and track fitting is further carried out according to the movement gesture and the positioning result of the robot.
Alternatively, the period during which the sensor collects data may be the same as the period during which the control server extracts motion data, e.g. all 100Hz.
Optionally, the track deviation obtained by the track calibration module may be used to describe the direction deviation of the motion track and/or the size deviation of the track.
Alternatively, the trajectory calibration module may determine a trajectory deviation by calculating a distance value between corresponding points on two motion trajectories, the trajectory deviation describing a magnitude deviation. The distance may be a euclidean distance, a mahalanobis distance, a manhattan distance, or the like. For example, based on the Euclidean distance, the trajectory deviation can be calculated using the following formula:
wherein A is i And B i Respectively an actual motion track and a reference motion trackAnd the corresponding point. D can be calculated by using the formula as the square root of the sum of squares of distance values between different corresponding points on two tracks, and the value is the track deviation.
As regards the magnitude of the deviation, it can also be understood in connection with fig. 3. In the movement space of the robot, it is assumed that the robot should be at point M in fig. 3 after moving according to the first movement data, and the robot should be at point N after actually moving according to the first movement data. At this time, the track calibration module may calculate the distance between the M points and the N points, that is, the track deviation, where the track deviation may reflect that the robot does not reach the M points or exceeds the M points.
Optionally, the track calibration module may further determine a track deviation by comparing the positional relationship between corresponding points on the motion track, where the track deviation is used to describe a direction deviation. Assuming that the point a in the reference motion trail corresponds to the point B in the actual motion trail, if the trail calibration module determines that the point B is located above the point a, the actual motion trail can be considered to be above the reference motion trail. In order to improve accuracy of track deviation determination, if most points in the actual motion track are located above the reference track, the actual motion track may be considered to be located above the reference motion track.
For example, if the N point where the robot is actually located after moving according to the first movement data is located above the M point, the N point may be considered to be more than the M point.
It can be seen that the track calibration module can determine the deviation of the motion track in the direction and the size by means of the distance and the position relation between the corresponding points on the motion track. The trajectory calibration module may then further convert the trajectory bias into compensated motion data. In the next control period, the first local controller of the robot can receive second motion data corresponding to the next control period issued by the control server, and jointly control the motion of the robot in the next control period according to the compensation motion data and the second motion data.
Alternatively, the second motion data may be included in a second control instruction, which may be generated by a second local controller in the control server. The compensation motion data may be included in a compensation command, and the first local controller in the robot may further convert the compensation motion data into a control command. The robot can control the movement of the robot in the next control period by executing the compensation command generated by the robot and the second control command issued by the control server.
In practice, the trajectory deviation may be compensated for in particular by controlling the movement speed and/or the movement angle of the robot, and thus the compensation command may in particular comprise a movement speed control command and/or a movement angle control command.
Wherein the trajectory deviation and the compensation motion data are in inverse relation. Continuing with the above example, if the trajectory offset indicates that the current N point of the robot is above M, i.e., the N point is above M, the compensation motion data should be the data that controls the robot to move from N point to M point.
Optionally, the first local controller in the robot may determine the motion speed control instruction according to a preset correspondence between the compensated motion data and the speed. In view of the above, the first local controller in the robot may generate the speed control instruction according to a correspondence between a range where the distance value between the N point and the M point is located and the speed. It will be readily appreciated that the greater the distance value between the N and M points, the greater the speed in the speed control command.
Optionally, the first local controller may also determine the motion angle control command from the compensated motion data. With the above example in mind, if the N point is located above the M point, the controller may generate a movement angle control command according to the positional relationship, where the angle in the command enables the robot to move from the N point to the M point.
In practice, the controller in the robot may generate the motion speed control command and the motion angle control command at the same time, or may generate one of the control commands separately, according to the difference in the magnitude deviation and the direction deviation used for description of the trajectory deviation.
In this embodiment, the track calibration module deployed on the robot may perform track calibration to compensate for the deviation generated in the current control period in the next control period. Although the control period is shorter, the track calibration is performed locally on the robot, so that the compensation motion data can be timely acquired by a controller in the robot, and the motion track of the robot can be timely compensated in the next control period.
In addition, the details and technical effects that can be achieved in this embodiment are referred to in the above embodiments, and are not described herein.
In practice, various factors such as flexibility of a motion structure of the robot, an environment in which the robot is located, transmission delay of motion data, and the like can cause track deviation. In view of the complexity of these factors, the occurrence of track deviations is unavoidable. Optionally, after obtaining the track deviation, the track calibration module in the robot may first determine whether the track deviation exceeds a preset range. If the track deviation does not exceed the preset range, the track deviation is smaller, the execution quality of the task is not affected, and the robot can not compensate the motion track of the robot in the next control period. If the track deviation exceeds the preset range, which indicates that the track exceeds the acceptable range, the execution quality of the task is affected, and the track calibration module in the robot further performs track compensation according to the embodiment shown in fig. 2.
In addition, in the embodiment shown in fig. 2, the track deviation may describe a size deviation or a direction deviation of the track, and the preset range is also specifically a first preset range corresponding to the size deviation and a second preset range corresponding to the direction deviation.
In this embodiment, the working pressure of the track calibration module in the robot can be reduced by setting the preset range while ensuring the task execution quality.
Fig. 4 is a schematic diagram of a motion control system according to another embodiment of the present invention when the track deviation is determined by the control server. The system comprises: and controlling the server and the robot. The control server may specifically include a trajectory calibration module and a second local controller.
The second local controller of the robot may receive the first motion data corresponding to the current control period issued by the control server in the current control period and control the robot to move so as to generate an actual motion trail. Then, the track calibration module in the control server can obtain track deviation by comparing the actual motion track with the reference motion track.
The fitting of the motion track and the calculation of the track deviation can be referred to the related description in the embodiment shown in fig. 2, which is not described herein. Alternatively, the trajectory fitting may also be performed by the control server.
The trajectory calibration module may then further convert the trajectory bias into compensated motion data and send this compensated motion data to the robot. In the next control period, the first local controller of the robot can receive the second motion data and the compensation motion data corresponding to the next control period issued by the control server together, and jointly control the motion of the robot in the next control period according to the second motion data and the compensation motion data.
Alternatively, a second local controller in the control server may generate a control instruction containing the compensated motion data and the second motion data and send the control instruction to the robot in the next control cycle. Then the first local controller of the robot may control the robot movement by executing this control instruction in the next control cycle.
In this embodiment, the track calibration module deployed on the control server may perform track calibration, so as to compensate for the deviation generated in the current control period in the next control period. By means of stronger computing power of the control server, the compensation motion data can be obtained faster and more accurately, and the compensation motion data and the second motion data can be sent to the robot in parallel, so that the robot can timely compensate the motion trail of the robot in the next control period.
In addition, the details and technical effects that can be achieved in this embodiment are referred to in the above embodiments, and are not described herein.
In addition, similar to the embodiment shown in fig. 2, the track calibration module in the control server may further determine whether the track deviation exceeds the preset range after obtaining the track deviation. If the track deviation does not exceed the preset range, the control server can not compensate the motion track of the control server in the next control period. If the track deviation exceeds the preset range, the track calibration module in the control server may further perform track compensation according to the embodiment shown in fig. 4.
In this embodiment, the working pressure of the track calibration module in the control server may be reduced by setting the preset range while ensuring the task execution quality.
Based on the above system embodiments, the working processes of the robot and the control server can be respectively described from the viewpoint of the method.
Fig. 5 is a flowchart of a motion control method according to an embodiment of the present invention, where the motion control method according to the embodiment of the present invention may be performed by a robot. As shown in fig. 5, the method comprises the steps of:
S101, first motion data corresponding to a current control period is received.
S102, determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data.
The robot receives first motion data corresponding to the current control period and controls the robot to move according to the first motion data so as to form an actual motion trail. Then, the actual motion trail and the reference motion trail are further compared to obtain trail deviation between the two.
The motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot. The track deviation described above may describe a magnitude deviation and a direction deviation. The robot may perform a fit of the actual motion profile and the reference motion profile. The fitting manner of the motion track and the determination manner of the track deviation can also be referred to as related description in the embodiment shown in fig. 2.
S103, controlling the movement of the robot in the next control period according to the track deviation.
In the next control cycle, the robot can control the movement of the robot using the trajectory deviation. Specifically, the control server may issue second motion data corresponding to the next control period to the robot. Meanwhile, the robot can also convert the track deviation into compensation motion data, and then the robot can control the motion of the robot in the next control period according to the second motion data and the compensation motion data.
Wherein the second motion data may be included in a second control instruction generated by the control server and the compensation motion data may be included in a compensation instruction generated by the robot. The robot can control its own movement in the next control period by executing the second control command and the compensation command.
Optionally, the motion speed control instruction and/or the motion angle control instruction may be included in the compensation instruction generated by the robot according to the compensation motion data. The specific generation of the movement speed control command and the movement angle control command can also be described with reference to the embodiment shown in fig. 2.
In this embodiment, the robot receives the first motion data corresponding to the current control period, and controls itself to move according to the first motion data, so that an actual motion track can be generated in the motion process. The robot may compare the actual motion trajectory with a standard motion trajectory that the robot should have according to the first motion data, that is, a reference motion trajectory corresponding to the first motion data, so as to obtain a trajectory deviation. When the next control period is reached, the robot can control the robot movement according to the track deviation.
In the current control period, the motion gesture and/or the motion position of the robot are inaccurate due to the deviation of the motion track of the robot, so that the quality of the robot for executing tasks is affected. After the method is used, the robot determines the track deviation generated in the current control period and can make up the track deviation in the next control period, so that the action and the position of the robot are ensured to be consistent with the standard action, and the quality of the robot executing the task is improved.
Based on the above description, the embodiment of the present invention further provides a robot, as shown in fig. 6, which includes a local controller, a motion structure, and a track calibration module. The local controller is the first local controller in the system embodiment described above.
In the current control period, the local controller of the robot can receive first motion data corresponding to the current control period, which is sent by the control server. And controlling the motion of the motion structure according to the first motion data to generate an actual motion trail. The motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
Then, the track calibration module of the robot may determine a track deviation between the actual motion track and a reference motion track corresponding to the first motion data. In the next control period, the local controller of the robot can control the motion of the motion structure according to the track deviation obtained by the track calibration module so as to compensate the track deviation generated in the current control period.
Optionally, the robot further comprises: and the sensor is used for acquiring sensing data in the process of moving the robot according to the first movement data. The robot can fit the actual motion trail according to the collected sensing data. And fitting a reference motion trail according to the first motion data.
Alternatively, the calculation of the track deviation, the conversion of the compensation data, and the generation of the compensation command may be described in the above related embodiments, which are not described herein.
In addition, the details and technical effects that can be achieved in this embodiment are described in the above related embodiments, and are not described in detail herein.
Fig. 7 is a flowchart of another motion control method according to an embodiment of the present invention, where the motion control method according to the embodiment of the present invention may be executed by a control server. As shown in fig. 7, the method includes the steps of:
s201, first motion data corresponding to a current control period are sent to the robot.
S202, determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data.
And in the current control period, the control server transmits first motion data corresponding to the period to the robot. The robot forms an actual motion trail in the motion process according to the first motion data. The control server may determine a trajectory deviation between the actual motion trajectory and a reference motion trajectory corresponding to the first motion data. The fitting of the two motion trajectories and the determination of the estimated deviation can be performed by a control server, and the specific process can be referred to as the description in the related embodiment.
The motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
S203, determining second motion data sent to the robot in the next control period according to the track deviation.
The control server may determine second motion data to be transmitted to the robot in a next control period according to the trajectory deviation.
Optionally, the second motion data may include compensation motion data determined according to the trajectory deviation and third motion data corresponding to a next control period.
It should be noted that the third motion data in this embodiment is the second motion data in each embodiment. The second motion data in the present embodiment is all motion data to be transmitted to the robot in the next control period, not the second motion data corresponding to the next control period mentioned in the above embodiments.
Optionally, after obtaining the track deviation, the track calibration module in the control server may further determine whether the track deviation exceeds a preset range. If the track deviation does not exceed the preset range, the control server can not compensate the motion track of the control server in the next control period. If the track deviation exceeds the preset range, the track calibration module in the control server may further perform track compensation according to the embodiment shown in fig. 4.
The details of the embodiment and the technical effects that can be achieved are described in the related embodiments, and are not described in detail herein.
The specific implementation of the above-mentioned object control manner is described below in connection with a robot scenario. The following can also be understood in conjunction with fig. 8.
Assume that the cloud server is used for controlling the humanoid robots 1 to 3 to complete the task of group dance, and a track calibration module is configured in each humanoid robot.
The dancing action to be completed by the humanoid robot can be written into a skeleton animation in advance, so that the cloud server can periodically extract the motion data corresponding to the period from the skeleton animation, and the humanoid robot realizes continuous motion by executing the motion data issued by different control periods, thereby completing the dancing.
The humanoid robots 1 to 3 can respectively receive the motion data corresponding to the period T1 issued by the cloud server, and control the motion structure of the humanoid robot 1 to move according to the motion data so as to form an actual motion trail.
Each humanoid robot can also determine the track deviation between various generated actual motion tracks and the reference motion tracks corresponding to the motion data of the T1 period by utilizing the track calibration module deployed by the humanoid robot, and further convert the track deviation into compensation motion data. Considering that the flexibility of the motion structures of the humanoid robots 1 to 3 are different, the humanoid robots 1 to 3 can obtain different supplementary motion data. Specifically, the humanoid robot 1 may obtain the compensated motion data 1, the humanoid robot 2 may obtain the compensated motion data 2, and the humanoid robot 3 may obtain the compensated motion data 3.
The track deviation determining process and the compensation motion data converting process may refer to the related descriptions in the above embodiments, which are not described herein.
In the T2 period after the T1 period, the cloud server can still extract the motion data corresponding to the T2 period from the bone animation. The humanoid robot 1 can control the motion of the humanoid robot 1 in the T2 period according to the motion data corresponding to the T2 period and the compensation motion data 1 obtained previously. The occurrence of the compensation motion data can compensate the position deviation of the robot in the T1 period in the T2 period, so that the dance motion standard is ensured.
Similarly, other humanoid robots may be compensated for in the manner described above. Through the compensation, the tidy and uniform dancing actions of a plurality of humanoid robots can be realized.
The details of the present embodiment that are not described in detail in the present embodiment may also be referred to the related descriptions in the above embodiments, which are not described herein.
Motion control devices of one or more embodiments of the present invention will be described in detail below. Those skilled in the art will appreciate that these motion control devices can be configured by the steps taught by the present solution using commercially available hardware components.
Fig. 9 is a schematic structural diagram of a motion control device according to an embodiment of the present invention, as shown in fig. 9, where the motion control device includes:
the receiving module 11 is configured to receive first motion data corresponding to a current control period.
The deviation determining module 12 is configured to determine a trajectory deviation between an actual motion trajectory formed during the motion of the robot according to the first motion data and a reference motion trajectory corresponding to the first motion data.
And the control module 13 is used for controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
Optionally, the control module 13 is configured to determine compensation motion data according to the track deviation if the track deviation exceeds a preset range; receiving second motion data corresponding to the next control period;
and controlling the movement of the robot in the next control period according to the compensation movement data and the second movement data.
Optionally, the control module 13 is configured to generate a compensation instruction according to the compensation data, where the compensation instruction includes a motion angle control instruction and/or a motion speed control instruction;
And controlling the movement of the robot in the next control period by executing a control instruction containing the second movement data and the compensation instruction.
Optionally, the control module 13 is configured to generate a motion speed control instruction in the compensation instruction according to a correspondence between the compensation motion data and a speed;
and/or determining a motion angle control instruction in the compensation instruction according to the compensation motion data.
Optionally, the deviation determining module 12 is configured to determine a distance value between corresponding points on the actual motion trajectory and the reference motion trajectory; and determining the track deviation according to the distance value.
Optionally, the deviation determining module 12 is configured to determine a positional relationship between corresponding points on the actual motion trajectory and the reference motion trajectory; and determining the track deviation according to the position relation.
Optionally, the apparatus further comprises: a fitting module 14, configured to fit the actual motion trail according to the sensing data acquired by the robot during the motion according to the first motion data;
and fitting the reference motion trail according to the first motion data.
The apparatus shown in fig. 9 may perform the method of the embodiment shown in fig. 5, and reference is made to the relevant description of the embodiment shown in fig. 5 for parts of this embodiment not described in detail. The implementation process and the technical effect of this technical solution are described in the embodiment shown in fig. 5, and are not described herein.
The internal functions and structures of the motion control apparatus are described above, and in one possible design, the structure of the motion control apparatus may be implemented as an electronic device, as shown in fig. 10, which may include: a first processor 21 and a first memory 22. Wherein the first memory 22 is for storing a program for supporting the electronic device to execute the motion control method provided in the embodiment shown in fig. 5 described above, and the first processor 21 is configured for executing the program stored in the memory 22.
The program comprises one or more computer instructions which, when executed by the first processor 21, are capable of carrying out the steps of:
receiving first motion data corresponding to a current control period;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
And controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
Optionally, the first processor 21 is further configured to perform all or part of the steps in the embodiment shown in fig. 5.
The electronic device may further include a first communication interface 23 in a structure for the electronic device to communicate with other devices or a communication network.
Fig. 11 is a schematic structural diagram of another motion control apparatus according to an embodiment of the present invention, as shown in fig. 11, the apparatus includes:
a sending module 31, configured to send first motion data corresponding to a current control period to the robot;
the track determining module 32 is configured to determine a track deviation between an actual motion track formed in the motion process of the robot according to the first motion data and a reference motion track corresponding to the first motion data;
the data determining module 33 is configured to determine, according to the trajectory deviation, second motion data sent to the robot in a next control period, where a motion trajectory includes a movement path generated by movement of the robot and/or an action path formed by the robot completing a preset action.
Optionally, the data determining module 33 is configured to determine compensation motion data according to the track deviation if the track deviation exceeds a preset range; and determining third motion data corresponding to the next control period and the compensation data as the second motion data.
The apparatus shown in fig. 11 may perform the method of the embodiment shown in fig. 7, and reference is made to the relevant description of the embodiment shown in fig. 7 for parts of this embodiment not described in detail. The implementation process and the technical effect of this technical solution are described in the embodiment shown in fig. 7, and are not described herein.
The internal functions and structures of the motion control apparatus are described above, and in one possible design, the structure of the motion control apparatus may be implemented as another electronic device, as shown in fig. 12, which may include: a second processor 41 and a second memory 42. Wherein the second memory 42 is configured to store a program for supporting the electronic device to execute the motion control method provided in the embodiment shown in fig. 7 described above, and the second processor 41 is configured to execute the program stored in the second memory 42.
The program comprises one or more computer instructions which, when executed by the second processor 41, are capable of carrying out the steps of:
Transmitting first motion data corresponding to a current control period to the robot;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and determining second motion data sent to the robot in the next control period according to the track deviation, wherein the motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of preset actions of the robot.
Optionally, the second processor 41 is further configured to perform all or part of the steps in the foregoing embodiment shown in fig. 7.
The electronic device may further include a second communication interface 43 in the structure of the electronic device, for the electronic device to communicate with other devices or a communication network.
In addition, an embodiment of the present invention provides a computer storage medium, configured to store computer software instructions for the electronic device, where the computer storage medium includes a program for executing the motion control method according to the embodiment of the method shown in fig. 5 or fig. 7.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (17)

1. A motion control method, applied to a robot, comprising:
receiving first motion data corresponding to a current control period;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of a preset action of the robot.
2. The method of claim 1, wherein said controlling the movement of the robot in a next control cycle according to the trajectory deviation comprises:
if the track deviation exceeds a preset range, determining compensation motion data according to the track deviation;
receiving second motion data corresponding to the next control period;
and controlling the movement of the robot in the next control period according to the compensation movement data and the second movement data.
3. The method of claim 2, wherein controlling the motion of the robot in the next control period based on the compensated motion data and the second motion data comprises:
Generating a compensation instruction according to the compensation data, wherein the compensation instruction comprises a motion angle control instruction and/or a motion speed control instruction;
and controlling the movement of the robot in the next control period by executing a control instruction containing the second movement data and the compensation instruction.
4. A method according to claim 3, wherein said generating a compensation instruction from said compensation data comprises:
generating a motion speed control instruction in the compensation instruction according to the corresponding relation between the compensation motion data and the speed;
and/or the number of the groups of groups,
and determining a motion angle control instruction in the compensation instruction according to the compensation motion data.
5. The method according to claim 1, wherein determining a trajectory deviation between an actual motion trajectory of the robot formed during the motion according to the first motion data and a reference motion trajectory corresponding to the first motion data includes:
determining a distance value between corresponding points on the actual motion trail and the reference motion trail;
and determining the track deviation according to the distance value.
6. The method according to claim 1, wherein determining a trajectory deviation between an actual motion trajectory of the robot formed during the motion according to the first motion data and a reference motion trajectory corresponding to the first motion data includes:
Determining the position relation between the corresponding points on the actual motion trail and the reference motion trail;
and determining the track deviation according to the position relation.
7. The method according to claim 1, wherein the method further comprises:
fitting the actual motion trail according to the sensing data acquired by the robot in the motion process according to the first motion data;
and fitting the reference motion trail according to the first motion data.
8. The motion control method is characterized by being applied to a cloud server and comprising the following steps of:
transmitting first motion data corresponding to a current control period to the robot;
determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and determining second motion data sent to the robot in the next control period according to the track deviation, wherein the motion track comprises a motion track generated by the movement of the robot and/or an action track formed by the completion of preset actions of the robot.
9. The method of claim 8, wherein determining second motion data to be sent to the robot in a next control cycle based on the trajectory bias comprises:
If the track deviation exceeds a preset range, determining compensation motion data according to the track deviation;
and determining third motion data corresponding to the next control period and the compensation data as the second motion data.
10. A robot, comprising: the system comprises a local controller, a motion structure and a track calibration module;
the local controller is used for receiving first motion data corresponding to a current control period; controlling the motion of the motion structure according to the first motion data to generate an actual motion trail; controlling the motion of the motion structure in the next control period according to the track deviation obtained by the track calibration module;
the track calibration module is configured to determine the track deviation between the actual motion track and a reference motion track corresponding to the first motion data, where the motion track includes a motion track generated by the movement of the robot and/or an action track formed by the robot completing a preset action.
11. The robot of claim 10, further comprising: the sensor is used for acquiring sensing data in the process that the robot moves according to the first movement data;
The robot is used for fitting the actual motion trail according to the sensing data; and fitting the reference motion trail according to the first motion data.
12. A motion control system, comprising: cloud server and robot;
the cloud server is used for sending first motion data corresponding to the current control period;
the robot is used for controlling the robot to move according to the first movement data so as to generate an actual movement track; and controlling the movement of the robot in the next control period according to the track deviation, wherein the track deviation comprises the deviation between the actual movement track and a reference movement track corresponding to the first movement data, and the movement track comprises a movement track generated by the movement of the robot and/or an action track formed by the completion of preset actions by the robot.
13. The system of claim 12, wherein the robot comprises a trajectory calibration module and a first local controller;
the track calibration module is used for determining the track deviation; if the track deviation exceeds a preset range, determining compensation motion data according to the track deviation;
The first local controller is used for receiving second motion data corresponding to the next control period sent by the control server; and controlling the movement of the robot in the next control period according to the compensation movement data and the second movement data.
14. The system of claim 12, wherein the control server: the system comprises a track calibration module and a second local controller;
the track calibration module is used for determining the track deviation; if the track deviation exceeds a preset range, determining compensation motion data according to the track deviation;
the second local controller is configured to send the compensation motion data and second motion data corresponding to the next control period to the robot in the next control period;
and the robot is used for controlling the movement of the robot in the next control period according to the compensation movement data and the second movement data.
15. A motion control apparatus, comprising:
the receiving module is used for receiving first motion data corresponding to the current control period;
the deviation determining module is used for determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
And the control module is used for controlling the movement of the robot in the next control period according to the track deviation, wherein the movement track comprises a movement path generated by the movement of the robot and/or an action path formed by the completion of a preset action of the robot.
16. A motion control apparatus, comprising:
the sending module is used for sending the first motion data corresponding to the current control period to the robot;
the track determining module is used for determining the track deviation between the actual motion track formed in the motion process of the robot according to the first motion data and the reference motion track corresponding to the first motion data;
and the data determining module is used for determining second motion data sent to the robot in the next control period according to the track deviation, wherein the motion track comprises a moving path generated by the movement of the robot and/or an action path formed by the completion of a preset action of the robot.
17. A non-transitory machine-readable storage medium having stored thereon executable code which, when executed by a processor of an electronic device, causes the processor to perform the motion control method of any of claims 1 to 9.
CN202311332793.2A 2023-10-13 2023-10-13 Motion control method, system, device, robot and storage medium Pending CN117301060A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311332793.2A CN117301060A (en) 2023-10-13 2023-10-13 Motion control method, system, device, robot and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311332793.2A CN117301060A (en) 2023-10-13 2023-10-13 Motion control method, system, device, robot and storage medium

Publications (1)

Publication Number Publication Date
CN117301060A true CN117301060A (en) 2023-12-29

Family

ID=89288203

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311332793.2A Pending CN117301060A (en) 2023-10-13 2023-10-13 Motion control method, system, device, robot and storage medium

Country Status (1)

Country Link
CN (1) CN117301060A (en)

Similar Documents

Publication Publication Date Title
CN110355751B (en) Control device and machine learning device
JP7326911B2 (en) Control system and control method
CN103517789B (en) motion prediction control device and method
JP6826069B2 (en) Robot motion teaching device, robot system and robot control device
CN107627303A (en) A kind of PD SMC control methods based on vision servo system of the eye in structure on hand
JP2012089174A (en) Robot and program of information processor
JP2019098439A (en) Vibration suppression device
Klingensmith et al. Closed-loop servoing using real-time markerless arm tracking
CN112650217B (en) Robot trajectory tracking strategy dynamic optimization method based on evaluation function
JP2011210121A (en) Program for robot and program for information-processing device
CN114347033A (en) Robot article grabbing method and device, robot and storage medium
CN112894758A (en) Robot cleaning control system, method and device and computer equipment
CN113867333A (en) Stair climbing planning method for quadruped robot based on visual perception and application of stair climbing planning method
JP5679121B2 (en) Robot motion prediction control method and apparatus
CN112067007B (en) Map generation method, computer storage medium, and electronic device
CN101870104B (en) Manipulator inverse moving method
JP7447568B2 (en) Simulation equipment and programs
CN117301060A (en) Motion control method, system, device, robot and storage medium
JP2002046087A (en) Three-dimensional position measuring method and apparatus, and robot controller
CN117021066A (en) Robot vision servo motion control method based on deep reinforcement learning
CN113021329A (en) Robot motion control method and device, readable storage medium and robot
US20240058943A1 (en) Moving apparatus and moving apparatus control method
US20240054393A1 (en) Learning Device, Learning Method, Recording Medium Storing Learning Program, Control Program, Control Device, Control Method, and Recording Medium Storing Control Program
CN107329457B (en) Trajectory planning and control method of end effector of machine equipment in production operation system
CN209999206U (en) Automatic tracking turret system for networked entity game robots

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