CN112540630A - Method and device for processing motor speed signal, robot and storage medium - Google Patents
Method and device for processing motor speed signal, robot and storage medium Download PDFInfo
- Publication number
- CN112540630A CN112540630A CN202010546786.2A CN202010546786A CN112540630A CN 112540630 A CN112540630 A CN 112540630A CN 202010546786 A CN202010546786 A CN 202010546786A CN 112540630 A CN112540630 A CN 112540630A
- Authority
- CN
- China
- Prior art keywords
- speed
- motor
- sampling
- predicted
- performance parameter
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005070 sampling Methods 0.000 claims abstract description 157
- 238000003672 processing method Methods 0.000 claims abstract description 4
- 238000004590 computer program Methods 0.000 claims description 20
- 230000001133 acceleration Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 18
- 230000009467 reduction Effects 0.000 claims description 2
- 230000008859 change Effects 0.000 abstract description 5
- 238000004364 calculation method Methods 0.000 abstract description 3
- 238000001914 filtration Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D13/00—Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover
- G05D13/62—Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover characterised by the use of electric means, e.g. use of a tachometric dynamo, use of a transducer converting an electric value into a displacement
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
The application is applicable to the technical field of robots and provides a motor speed signal processing method and device, a robot and a storage medium. The method comprises the following steps: acquiring a first sampling speed of a last sampling period; predicting the current speed of the motor according to the first sampling speed, the motor performance parameters and the first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor. According to the embodiment of the application, the speed of the current sampling period is predicted according to the sampling speed obtained in the previous sampling period, so that the predicted speed of the current sampling period can be obtained in real time, and the predicted speed is close to the actual running speed of the motor. The change of the motor speed is calculated according to the motor performance parameters and is linear operation, so that the method for processing the speed signal provided by the embodiment of the application has small calculation amount and good real-time performance; the obtained predicted speed can be applied to real-time control of the motor.
Description
Technical Field
The application belongs to the technical field of robots, and particularly relates to a motor speed filtering method and device, a robot and a storage medium.
Background
The mobile robot generally adopts a motor to drive the robot to move. Accurate motion control of the mobile robot is based on accurate control of the motor. In the moving process of the mobile robot, the running speed of the motor is inconsistent with the set running speed of the motor due to the change of road conditions in the moving path, such as the fluctuation of road conditions and the change of resistance. The motor control unit can control the motor to run at a speed close to the set speed, but the actual running speed of the motor still changes, so that the mobile robot needs to acquire the actual running speed of the motor in real time and adjust the set speed of the motor according to the actual running speed of the motor and the path planning of the mobile robot.
However, in practice, the motor speed signal obtained by real-time sampling may be interfered by delay or noise, and thus the sampling speed obtained by sampling the motor speed may not be consistent with the actual speed of the motor. If the set speed of the motor is adjusted by directly using the sampling speed obtained by sampling the speed of the motor in real time, divergence of motor speed control and further divergence of motion control of the mobile robot can be caused.
In general, a filtering process is required to be performed on a sampling speed signal of the motor obtained by real-time sampling. In the prior art, a first-order or second-order low-pass filter is often adopted to filter a real-time sampling speed signal, but the filtering processing is complex. Therefore, in the motion control of the mobile robot, a method of removing interference in the sampling speed signal of the motor is required.
Disclosure of Invention
Embodiments of the present application provide a method and an apparatus for filtering a motor speed, a robot, and a storage medium, which may solve at least some of the above problems.
In a first aspect, an embodiment of the present application provides a method for processing a motor speed signal, including:
acquiring a first sampling speed of a last sampling period;
predicting the current speed of the motor according to the first sampling speed, the motor performance parameters and the first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
It should be understood that, in the embodiment of the present application, the speed of the current sampling period is predicted according to the sampling speed obtained in the last sampling period, so that the predicted speed of the current sampling period can be obtained in real time, and the predicted speed is close to the actual running speed of the motor. The change of the motor speed calculated according to the motor performance parameters is linear operation, so that the method for processing the speed signal provided by the embodiment of the application has small calculation amount and good real-time performance; the obtained predicted speed can be applied to real-time control of the motor.
In a second aspect, an embodiment of the present application provides a device for processing a motor speed signal, including:
the first sampling speed acquisition module is used for acquiring a first sampling speed of a previous sampling period;
the predicted speed obtaining module is used for predicting the current speed of the motor according to the first sampling speed, the motor performance parameter and a first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
In a third aspect, an embodiment of the present application provides a robot, including:
a memory, a processor and a computer program stored in the memory and executable on the processor, the computer program, when executed by the processor, implementing the method steps of the first aspect.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, including: the computer readable storage medium stores a computer program which, when executed by a processor, performs the method steps of the first aspect described above.
In a fifth aspect, embodiments of the present application provide a computer program product, which, when run on an electronic device, causes the electronic device to perform the method steps of the first aspect.
It is understood that the beneficial effects of the second aspect to the fifth aspect can be referred to the related description of the first aspect, and are not described herein again.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic system structure diagram of a robot provided in an embodiment of the present application;
FIG. 2 is a schematic flow chart illustrating a method for processing a motor speed signal according to an embodiment of the present disclosure;
FIG. 3 is a speed profile comparison of a predicted speed to a set speed of a motor and a second sample speed in accordance with an embodiment of the present application;
FIG. 4 is a schematic flow chart illustrating a method for processing a motor speed signal according to another embodiment of the present disclosure;
FIG. 5 is a speed profile comparison of a predicted speed to a set speed of a motor and a second sample speed for another embodiment of the present application;
FIG. 6 is a schematic structural diagram of a device for processing a motor speed signal according to an embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of a motor speed signal processing unit according to an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
It will be understood that the terms "comprises" and/or "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It should also be understood that the term "and/or" as used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
As used in this specification and the appended claims, the term "if" may be interpreted contextually as "when", "upon" or "in response to" determining "or" in response to detecting ". Similarly, the phrase "if it is determined" or "if a [ described condition or event ] is detected" may be interpreted contextually to mean "upon determining" or "in response to determining" or "upon detecting [ described condition or event ]" or "in response to detecting [ described condition or event ]".
Furthermore, in the description of the present application and the appended claims, the terms "first," "second," "third," and the like are used for distinguishing between descriptions and not necessarily for describing or implying relative importance.
Reference throughout this specification to "one embodiment" or "some embodiments," or the like, means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," or the like, in various places throughout this specification are not necessarily all referring to the same embodiment, but rather "one or more but not all embodiments" unless specifically stated otherwise. The terms "comprising," "including," "having," and variations thereof mean "including, but not limited to," unless expressly specified otherwise.
In order to solve the technical problem, the motion speed of the mobile robot is controlled in real time in the motion control of the mobile robot, and the method with small operand and high precision is provided to remove the interference in the motor sampling speed signal.
According to the embodiment of the application, the actual speed of the current sampling period of the motor is predicted according to the first sampling speed of the motor obtained from the motor control unit in the last sampling period and the first set speed of the motor when the first sampling speed is obtained, and the predicted speed is obtained. Since the predicted speed is a prediction of the result of the motor speed adjustment based on the motor performance, the predicted speed is close to the actual operating speed of the motor, that is, the interference in the second sampling speed of the current sampling period is removed, and the filtered actual operating speed of the motor is obtained. This predicted speed may be used to adjust the set speed of the motor, and in some embodiments, a second set speed for the motor is determined from the predicted speed.
It can be understood that, in the embodiment of the present application, the speed of the current sampling period is predicted according to the sampling speed obtained in the last sampling period, so that the predicted speed of the current sampling period can be obtained in real time, and the predicted speed is close to the actual operating speed of the motor. The change of the motor speed calculated according to the motor performance parameters is linear operation, so that the method for processing the speed signal provided by the embodiment of the application has small calculation amount and good real-time performance; the obtained predicted speed can be applied to real-time control of the motor.
Fig. 1 shows a system structure diagram of a robot according to an embodiment of the present application. The robot includes: a navigation control unit 110, a motor speed signal processing unit 120, a motor control unit 130, and one or more motors 140.
The navigation control unit 110 is configured to navigate the robot according to an instruction of a user or according to a travel plan of the robot, where the navigation includes, but is not limited to, setting a motion control instruction, and the motion control instruction includes a speed of the robot heading to a target position.
The motor speed signal processing unit 120 is configured to calculate a motion control command to obtain a set speed of each motor according to the speed of the robot heading to the target position, which is set by the navigation control unit 110.
The motor control unit 130, also called a servo driver, a servo controller, and a servo amplifier, is a controller for controlling a servo motor, acts on a common ac motor similarly to a frequency converter, belongs to a part of a servo system, and is mainly applied to a high-precision positioning system. The servo motor is generally controlled by three modes of position, speed and moment.
The motor 140 includes, but is not limited to, a servo motor and a stepper motor, and in some embodiments, the motor 140 is a hub motor.
The navigation control unit 110 sends a motion control instruction to the motor speed signal processing unit 120; the motor speed signal processing unit 120 sends the predicted speed data to the navigation control unit.
The motor speed signal processing unit 120 transmits the motor set speed to the motor control unit 130; the motor set speed is the speed of movement for each motor calculated by the motion control command, which in some embodiments is the rotational speed of the motor. Typically, the rotational speed is in Revolutions Per Minute (RPM).
The motor control unit 130 provides a driving current to the motor 140 according to a set speed of the motor; the motor 140 feeds a motor speed signal back to the motor control unit 130 via a sensor, such as a code wheel.
In some embodiments, the navigation control unit 110, the motor speed signal processing unit 120, and the motor control unit 130 each have a memory and a processor and a communication device. The navigation control unit 110, the motor speed signal processing unit 120, and the motor control unit 130 transmit signals through respective communication means and cables.
In some embodiments, at least two of the navigation control unit 110, the motor speed signal processing unit 120, and the motor control unit 130 may be integrated into one unit having a memory and a processor and a communication device.
It should be understood that the robot may also comprise communication units, vision units, speech units, positioning units, power units, service units, etc. as appropriate for the actual application, functional units not shown in fig. 1.
In some embodiments, the robot is a mobile robot.
The technical principle of the embodiments of the present application is explained as follows:
when the actual running speed of the motor is inconsistent with the set speed of the motor, the motor control unit can adjust the speed of the motor to enable the actual running speed of the motor to be close to the set speed of the motor. Meanwhile, when the actual running speed of the motor is inconsistent with the set speed of the motor, the actual speed of the motor adjusted by the motor control unit is limited by the performance and the set speed of the motor.
For example, if the operation speed of the motor is greater than the set speed at the previous time, the motor control unit controls the motor to decelerate. In the deceleration process, if the performance of the motor enables the motor to decelerate to the set speed, the current actual running speed of the motor is the set speed after being adjusted by the motor control unit. If the performance of the motor limits the speed adjustment of the motor, and the actual speed which can be reached by the motor is still greater than the set speed after the motor control unit adjusts and decelerates, the current actual running speed of the motor is the minimum speed which can be reached by the deceleration performance of the motor in the time period from the previous moment to the current moment.
For another example, if the operation speed of the motor is less than the set speed at the previous time, the motor control unit controls the motor to accelerate. In the acceleration process, if the performance of the motor enables the motor to accelerate to the set speed, the current actual running speed of the motor is the set speed after being adjusted by the motor control unit. If the performance of the motor limits the speed adjustment of the motor, and the actual speed which can be reached by the motor is still less than the set speed after the motor is adjusted and accelerated by the motor control unit, the current actual running speed of the single machine is the maximum speed which can be reached by the deceleration performance of the motor in the time period from the previous moment to the current moment.
Based on the above knowledge of the influence of the motor performance on the adjustment of the motor running speed, the speed of the motor in the current sampling period should be one of the speed and the set speed which can be reached by the performance of the motor in the time period from the last sampling period to the current sampling period under the control of the motor control unit. The embodiment of the application provides a method for processing a motor speed signal.
Fig. 2 illustrates a motor speed signal processing method provided in an embodiment of the present application, and the motor speed signal processing unit 120 applied to the robot illustrated in fig. 1 may be implemented by software and/or hardware of the motor speed signal processing unit 120. As shown in fig. 2, the method includes steps S110 to S120. The specific realization principle of each step is as follows:
s110, a first sampling speed of a last sampling period is obtained.
In the embodiment of the present application, the motor speed signal processing unit 120 performs a period T1The motor sampling speed for the current sampling period is obtained from the motor control unit 130 and stored in the storage medium. At each sampling period, the motor speed signal processing unit 120 acquires the first sampling speed of the last sampling period from the storage medium.
S120, predicting the current speed of the motor according to the first sampling speed, the motor performance parameter and a first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
It should be understood that the motor speed signal processing unit 120 sends the period T of the set speed to the motor control unit 1302Can be compared with a sampling period T1The same or different. If T is2、T1If the sampling period is the same period, the motor speed signal processing unit 120 sends the updated set speed to the motor control unit 130 every sampling period, and the set speed of the motor corresponding to the previous sampling period is the motor speed set by the previous set speed period. If T2And T1For different periods, usually T2Greater than T1The set speed of the motor when the first sampling speed is obtained from the motor sampling is the set speed of the motor when the first sampling speed is obtained from the motor control unit 130.
In one non-limiting example, the motor speed signal processing unit 120 is at a period T1Slave motor controlThe system unit 130 obtains the motor sampling speed of the current sampling period, and when the motor sampling speed is stored in the storage medium, stores the set speed of the motor in the storage medium, so as to conveniently search for the corresponding first set speed when the first sampling speed is obtained.
In the embodiments of the present application, the motor performance parameters include, but are not limited to: acceleration performance parameters and deceleration performance parameters. The acceleration performance parameter is the maximum acceleration of the motor during acceleration; the deceleration performance parameter is the maximum deceleration at which the motor decelerates. On the basis, predicting the current speed of the motor according to the first sampling speed, the motor performance parameter and the first set speed to obtain a predicted speed, and the method comprises the following steps:
step A: comparing the first sampling speed with the first set speed to obtain a comparison result; and selecting the motor performance parameters according to the comparison result, and determining an estimated speed according to the selected motor performance parameters and the first sampling speed.
In one non-limiting example of step a, selecting the motor performance parameter based on the comparison, and determining an estimated speed based on the selected motor performance parameter and the first sampling speed comprises: if the comparison result is that the first sampling speed is smaller than the first set speed, selecting the acceleration performance parameter as a motor performance parameter, and obtaining the estimated speed according to the first sampling speed and the acceleration performance parameter of the motor; and if the comparison result shows that the first sampling speed is greater than the first set speed, obtaining the estimated speed according to the first sampling speed and the deceleration performance parameter of the motor.
In another non-limiting example of step a, obtaining the estimated speed based on the first sample speed and an acceleration performance parameter of the electric machine comprises: and obtaining an estimated speed by performing linear operation on the first sampling speed and the acceleration performance parameter of the motor. For example, by the formula VL=Vfb+aaccT obtains the estimated velocity, where VLTo estimate the speed, VfbIs a first sampling speed, aaccFor accelerating performance parametersAnd T is the sampling period. Obtaining the estimated speed according to the first sampling speed and a deceleration performance parameter of the motor, including: and obtaining an estimated speed by performing linear operation on the first sampling speed and the deceleration performance parameter of the motor. For example, by the formula VL=Vfb-adecT obtaining the estimated speed; wherein, VLTo estimate the speed, VfbIs a first sampling speed, adecAnd T is a sampling period.
In another non-limiting example of step a, the estimated speed is obtained according to the first sampling speed and an acceleration performance parameter of the motor, and may be obtained according to the first sampling speed, a filter coefficient and the acceleration performance parameter; the estimated speed is obtained according to the first sampling speed and a deceleration performance parameter of the motor, and may be obtained according to the first sampling speed, a filter coefficient and the deceleration performance parameter.
It can be understood that the filter coefficient can obtain an ideal value through debugging or according to experience, and the estimated speed can be adjusted according to actual conditions by setting the filter coefficient, so that corresponding predicted speed can be obtained according to different requirements of feedback effects.
In a non-limiting specific example of step a, obtaining the estimated speed according to the first sampling speed, the filter coefficient and the acceleration performance parameter includes:
by the formula VL=Vfb+kaaccT obtaining the estimated speed;
obtaining the estimated speed according to the first sampling speed, the filter coefficient and the deceleration performance parameter, including:
by the formula VL=Vfb-kadecT obtaining the estimated speed;
wherein, VLTo estimate the speed, VfbIs a first sampling speed, aaccTo accelerate the performance parameter, adecAnd (4) speed reduction performance parameters, T is a sampling period, and k is a filter coefficient.
And B: and selecting a prediction rule according to the comparison result, predicting the current speed of the motor according to the estimated speed and the first set speed by the selected prediction rule, and obtaining the predicted speed.
Based on the above understanding of the principle and control effect of the motor control unit 130 controlling the motor 140, the prediction model for predicting the current speed of the motor includes, but is not limited to, a simple mathematical model, a probabilistic statistical model, a neural network model, and other prediction models.
In a non-limiting example of step B, selecting a prediction rule according to the comparison result, and predicting the current speed of the motor according to the estimated speed and the first set speed by using the selected prediction rule to obtain the predicted speed includes: if the first sampling speed is less than the first set speed, determining the predicted speed according to the minimum value of the estimated speed and the first set speed; and if the first sampling speed is greater than the first set speed, determining the predicted speed according to the maximum value of the estimated speed and the first set speed.
In one non-limiting specific example, the predicted speed V is calculated by the formula V MIN (V) if the first sampling speed is less than the first set speedL,VS) Calculating to obtain; if the first sampling speed is greater than the first set speed, the first set speed is determined by the formula V MAX (V ═ MAX)L,VS) And (4) calculating. Wherein, VSIs the first set speed.
In the embodiment of the application, after the predicted speed is obtained through the first sampling speed in each sampling period, the current sampling speed of the motor, that is, the second sampling speed, is saved as the first sampling speed for obtaining the predicted speed in the next sampling.
Fig. 3 is a speed curve comparing the predicted speed obtained by the method for processing the motor speed signal according to the embodiment of the present application with the set speed of the motor and the second sampling speed. The abscissa in fig. 3 is the motor speed sampling period in units of ten milliseconds; the ordinate is speed in RPM.
Referring to fig. 3, in this embodiment, the motor set speed is kept constant, and only the relationship between the predicted speed and the second sampling speed is observed. As can be seen from fig. 3, the predicted speed is relative to the second sampling speed, and the spike portion of the second sampling speed is significantly suppressed. That is, the current speed of the motor is predicted by the motor set speed, the motor performance parameter and the first sampling speed, which is equivalent to performing the slice filtering on the second sampling speed, and referring to the above description about the embodiment of the present application, the predicted speed can be considered to be close to the actual operating speed of the motor.
It can be understood that, in the embodiment of the present application, the actual speed of the current sampling period of the motor is predicted according to the first sampling speed of the motor, which is obtained from the motor control unit in the last sampling period, and the performance parameter of the motor and the first set speed of the motor when the first sampling speed is obtained, so as to obtain the predicted speed. Since the predicted speed is a prediction of the result of the motor speed adjustment based on the motor performance, the predicted speed is close to the actual operating speed of the motor, that is, the interference in the second sampling speed of the current sampling period is removed, and the filtered actual operating speed of the motor is obtained. This predicted speed may be used to adjust the set speed of the motor, and in some embodiments, a second set speed for the motor is determined from the predicted speed.
On the basis of the embodiment of the method for processing the motor speed signal shown in fig. 2, after obtaining the predicted speed, as shown in fig. 4, the method further includes:
and S130, determining a second set speed according to the predicted speed.
In the embodiment of the present application, after obtaining the predicted speed, the motor speed signal processing unit 120 further includes: a second set speed is determined by the navigation control unit 110 based on the predicted speed. Specifically, the motor speed signal processing unit 120 transmits predicted speed data to the navigation control unit 110. The navigation control unit adjusts a motion control instruction according to the predicted speed, the motion control instruction including a speed at which the robot travels to the target position. The motor speed signal processing unit 120 calculates the motion control command according to the motion control command adjusted by the navigation control unit 110 to obtain the updated set speed of each motor, i.e. the second set speed. The motor speed signal processing unit 120 transmits the second set speed to the motor control unit 130 for controlling the motor 140 at the next period of transmitting the set speed.
In the embodiment of the present application, after the motor speed signal processing unit 120 obtains the predicted speed, the set speed of each motor is recalculated according to the motion control command sent by the navigation control unit 110, and the updated set speed of the motor, that is, the second set speed, is obtained. The motor speed signal processing unit 120 transmits the second set speed to the motor control unit 130 for controlling the motor 140 at the next period of transmitting the set speed.
Fig. 5 is a speed curve comparing the predicted speed obtained by the processing method of the motor speed signal provided by another embodiment of the present application with the set speed of the motor and the second sampling speed. The abscissa in fig. 5 is the motor speed sampling period in units of ten milliseconds; the ordinate is speed in RPM.
Referring to fig. 5, in this embodiment, the navigation control unit 110 sets a motion control command including a speed at which the robot travels to the target position according to the path plan of the robot. At the same time, in each sampling period T1The navigation control unit 110 receives the predicted speed sent by the motor speed signal processing unit 120, and adjusts the speed of the robot heading to the target position in the motion control command according to the predicted speed. The speed signal processing unit 120 receives the speed of the robot heading to the target position, and then calculates a second set speed for the motor. Fig. 5 shows an example of a process of decelerating the robot, and it is understood that the process of accelerating the robot is similar to this process, and is not described again.
As can be seen from fig. 5, the predicted speed is relative to the second sampling speed, and the spike portion of the second sampling speed is significantly suppressed. That is, the current speed of the motor is predicted by the motor set speed, the motor performance parameter and the first sampling speed, which is equivalent to performing the slice filtering on the second sampling speed, and referring to the above description about the embodiment of the present application, the predicted speed can be considered to be close to the actual operating speed of the motor. In addition, as can be seen from fig. 5, as the navigation control unit 110 adjusts the speed of the robot heading to the target position included in the motion control instruction according to the predicted speed, the predicted speed may play a role of performing slice filtering on the second sampling speed in most of the sampling period.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
Corresponding to the method for processing the motor speed signal shown in fig. 2, fig. 6 shows a device for processing the motor speed signal according to an embodiment of the present application, which includes:
the first sampling speed obtaining module M110 is configured to obtain a first sampling speed of a previous sampling period.
A predicted speed obtaining module M120, configured to predict a current speed of the motor according to the first sampling speed, the motor performance parameter, and a first set speed, so as to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
It is understood that various embodiments and combinations of the embodiments in the above embodiments and their advantages are also applicable to this embodiment, and are not described herein again.
Fig. 7 is a schematic structural diagram of a motor speed signal processing unit 120 according to an embodiment of the present disclosure. As shown in fig. 7, the motor speed signal processing unit 120 of this embodiment includes: at least one processor D100 (only one is shown in fig. 7), a memory D101, and a computer program D102 stored in the memory D101 and operable on the at least one processor D100, wherein the processor D100 implements the steps of any of the method embodiments described above when executing the computer program D102. Alternatively, the processor D100 implements the functions of the modules/units in the above-mentioned device embodiments when executing the computer program D102.
The motor speed signal processing unit 120 may be a computing device such as a desktop computer, a notebook computer, a palm computer, and a cloud server. The motor speed signal processing unit 120 may include, but is not limited to, a processor D100, a memory D101. Those skilled in the art will appreciate that fig. 7 is merely an example of the motor speed signal processing unit 120, and does not constitute a limitation of the motor speed signal processing unit 120, and may include more or less components than those shown, or combine some components, or different components, such as an input-output device, a network access device, and the like.
Processor D100 may be a Central Processing Unit (CPU), and Processor D100 may be other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory D101 may be an internal storage unit of the motor speed signal processing unit 120 in some embodiments, such as a hard disk or a memory of the motor speed signal processing unit 120. The memory D101 may also be an external storage device of the motor speed signal processing unit 120D10 in other embodiments, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, provided on the motor speed signal processing unit 120. Further, the memory D101 may also include both an internal storage unit and an external storage device of the motor speed signal processing unit 120. The memory D101 is used for storing an operating system, an application program, a BootLoader (BootLoader), data, and other programs, such as program codes of the computer programs. The memory D101 may also be used to temporarily store data that has been output or is to be output.
It should be noted that, for the information interaction, execution process, and other contents between the above-mentioned devices/units, the specific functions and technical effects thereof are based on the same concept as those of the embodiment of the method of the present application, and specific reference may be made to the part of the embodiment of the method, which is not described herein again.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
The embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored, and when the computer program is executed by a processor, the computer program implements the steps in the above-mentioned method embodiments.
The present embodiment provides a computer program product, which when running on the motor speed signal processing unit 120, enables the motor speed signal processing unit 120 to implement the steps in the above-mentioned method embodiments when executed.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, all or part of the processes in the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium and can implement the steps of the embodiments of the methods described above when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium may include at least: any entity or device capable of carrying computer program code to a photographing apparatus/terminal apparatus, a recording medium, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signal, telecommunication signal, and software distribution medium. Such as a usb-disk, a removable hard disk, a magnetic or optical disk, etc. In certain jurisdictions, computer-readable media may not be an electrical carrier signal or a telecommunications signal in accordance with legislative and patent practice.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/network device and method may be implemented in other ways. For example, the above-described apparatus/network device embodiments are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implementing, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not implemented. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.
Claims (11)
1. A method of processing a motor speed signal, comprising:
acquiring a first sampling speed of a last sampling period;
predicting the current speed of the motor according to the first sampling speed, the motor performance parameters and the first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
2. The process of claim 1, wherein the motor performance parameters comprise: acceleration performance parameters and deceleration performance parameters;
predicting the current speed of the motor according to the first sampling speed, the motor performance parameter and the first set speed to obtain a predicted speed, wherein the predicting comprises the following steps:
comparing the first sampling speed with the first set speed to obtain a comparison result;
selecting the motor performance parameters according to the comparison result, and determining an estimated speed according to the selected motor performance parameters and the first sampling speed;
and selecting a prediction rule according to the comparison result, predicting the current speed of the motor according to the estimated speed and the first set speed by the selected prediction rule, and obtaining the predicted speed.
3. The process of claim 2 wherein said selecting said motor performance parameter based on said comparison and determining an estimated speed based on said selected motor performance parameter and said first sample speed comprises:
if the comparison result is that the first sampling speed is smaller than the first set speed, selecting the acceleration performance parameter as a motor performance parameter, and obtaining the estimated speed according to the first sampling speed and the acceleration performance parameter of the motor;
and if the comparison result shows that the first sampling speed is greater than the first set speed, selecting the deceleration performance parameter as a motor performance parameter, and obtaining the estimated speed according to the first sampling speed and the deceleration performance parameter of the motor.
4. The process of claim 3,
the obtaining the estimated speed according to the first sampling speed and the acceleration performance parameter of the motor comprises:
obtaining the estimated speed according to the first sampling speed, the filter coefficient and the acceleration performance parameter;
the obtaining the estimated speed according to the first sampling speed and the deceleration performance parameter of the motor comprises:
and obtaining the estimated speed according to the first sampling speed, the filter coefficient and the deceleration performance parameter.
5. The processing method of claim 4, wherein said obtaining the estimated speed based on the first sampling speed, filter coefficients, and the acceleration performance parameter comprises:
by the formula VL=Vfb+kaaccT obtaining the estimated speed;
obtaining the estimated speed according to the first sampling speed, the filter coefficient and the deceleration performance parameter, including:
by the formula VL=Vfb-kadecT obtaining the estimated speed;
wherein, VLTo estimate the speed, VfbIs a first sampling speed, aaccTo accelerate the performance parameter, adecAnd (4) speed reduction performance parameters, T is a sampling period, and k is a filter coefficient.
6. The process of claim 2, wherein said selecting a prediction rule according to the comparison result, and predicting a current speed of the motor according to the estimated speed and the first set speed by the selected prediction rule to obtain the predicted speed comprises:
if the first sampling speed is less than the first set speed, determining the predicted speed according to the minimum value of the estimated speed and the first set speed;
and if the first sampling speed is greater than the first set speed, determining the predicted speed according to the maximum value of the estimated speed and the first set speed.
7. The process of claim 1, after said obtaining a predicted speed, further comprising:
a second set speed is determined based on the predicted speed.
8. A device for processing a motor speed signal, comprising:
the first sampling speed acquisition module is used for acquiring a first sampling speed of a previous sampling period;
the predicted speed obtaining module is used for predicting the current speed of the motor according to the first sampling speed, the motor performance parameter and a first set speed to obtain a predicted speed; the first set speed is the set speed of the motor when the first sampling speed is obtained by sampling the motor.
9. A motor speed signal processing unit comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1 to 7 when executing the computer program.
10. A robot comprising a processing unit of the motor speed signal of claim 9.
11. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010546786.2A CN112540630A (en) | 2020-06-16 | 2020-06-16 | Method and device for processing motor speed signal, robot and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010546786.2A CN112540630A (en) | 2020-06-16 | 2020-06-16 | Method and device for processing motor speed signal, robot and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112540630A true CN112540630A (en) | 2021-03-23 |
Family
ID=75013325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010546786.2A Pending CN112540630A (en) | 2020-06-16 | 2020-06-16 | Method and device for processing motor speed signal, robot and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112540630A (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6600979B1 (en) * | 2002-02-26 | 2003-07-29 | General Electric Company | Method and system for determining an inertially-adjusted vehicle reference speed |
CN109932695A (en) * | 2019-02-28 | 2019-06-25 | 广东工业大学 | A kind of method and device improving object recognition speed |
CN110442142A (en) * | 2018-05-02 | 2019-11-12 | 北京京东尚科信息技术有限公司 | Speed data processing method, device, electronic equipment and computer-readable medium |
CN110492817A (en) * | 2019-08-05 | 2019-11-22 | 北方工业大学 | A kind of direct prediction of speed control method and equipment of permanent magnet synchronous motor |
CN110858758A (en) * | 2018-08-23 | 2020-03-03 | 深圳市优必选科技有限公司 | Motor speed estimation method and device, and motor control method and system |
CN111158365A (en) * | 2019-12-31 | 2020-05-15 | 深圳优地科技有限公司 | Path planning method and device, robot and storage medium |
CN111152217A (en) * | 2019-12-30 | 2020-05-15 | 深圳优地科技有限公司 | Speed control method and device, robot and storage medium |
CN111168688A (en) * | 2019-12-25 | 2020-05-19 | 深圳市优必选科技股份有限公司 | Robot action playback method and device |
-
2020
- 2020-06-16 CN CN202010546786.2A patent/CN112540630A/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6600979B1 (en) * | 2002-02-26 | 2003-07-29 | General Electric Company | Method and system for determining an inertially-adjusted vehicle reference speed |
CN110442142A (en) * | 2018-05-02 | 2019-11-12 | 北京京东尚科信息技术有限公司 | Speed data processing method, device, electronic equipment and computer-readable medium |
CN110858758A (en) * | 2018-08-23 | 2020-03-03 | 深圳市优必选科技有限公司 | Motor speed estimation method and device, and motor control method and system |
CN109932695A (en) * | 2019-02-28 | 2019-06-25 | 广东工业大学 | A kind of method and device improving object recognition speed |
CN110492817A (en) * | 2019-08-05 | 2019-11-22 | 北方工业大学 | A kind of direct prediction of speed control method and equipment of permanent magnet synchronous motor |
CN111168688A (en) * | 2019-12-25 | 2020-05-19 | 深圳市优必选科技股份有限公司 | Robot action playback method and device |
CN111152217A (en) * | 2019-12-30 | 2020-05-15 | 深圳优地科技有限公司 | Speed control method and device, robot and storage medium |
CN111158365A (en) * | 2019-12-31 | 2020-05-15 | 深圳优地科技有限公司 | Path planning method and device, robot and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9268316B2 (en) | Method for automatically estimating a friction coefficient in a mechanical system | |
CN110320910B (en) | Vehicle avoidance control method and device, electronic equipment and storage medium | |
CN106020124B (en) | Servo motor control device and collision detection method | |
CN108319228B (en) | Acceleration and deceleration control method in numerical control system trajectory planning | |
CN113085850B (en) | Vehicle obstacle avoidance method and device, electronic equipment and storage medium | |
WO2013158849A2 (en) | Method for automatically estimating inertia in a mechanical system and for generating a motion profile | |
JP5187172B2 (en) | Motor control device, torque ripple correction method thereof, and motor control system | |
CN109976326B (en) | Wheeled robot control method and device, terminal device and medium | |
CN111923045B (en) | Robot control method, device, computer readable storage medium and processor | |
CN114690767A (en) | Robot trajectory planning method and system and robot | |
CN112720492B (en) | Complex track fairing method and device for multi-axis robot, medium and electronic equipment | |
CN111185908B (en) | Robot control method and device for recognizing friction force, robot and storage medium | |
CN114063568A (en) | Method, device, processor and computer readable storage medium for realizing magnification adjustment control of numerical control system based on cubic convolution interpolation | |
CN111813132B (en) | Positioning control method and device, programmable logic controller and readable storage medium | |
CN112540630A (en) | Method and device for processing motor speed signal, robot and storage medium | |
CN116466650A (en) | Precision compensation method and application of numerical control machine tool | |
EP3930179B1 (en) | Command generation device and command generation method to control motor | |
CN114376811B (en) | Wheelchair, control method and device thereof and computer readable storage medium | |
US11185983B2 (en) | Position control method for servo, computer readable storage medium, and robot | |
EP3076260A1 (en) | Device and method for assisting in design improvement work for mechanical device | |
CN108847807B (en) | Method, device and equipment for planning motion trail of motor and storage medium | |
CN112068490A (en) | Trajectory planning method and device, electronic equipment and storage medium | |
CN113839605A (en) | Motor rotating speed control method and device | |
CN115987176B (en) | Method and device for carrying out zero return control on motor position and edge controller | |
WO2023171122A1 (en) | Motor control device, and automatic adjustment method for same |
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 |