Disclosure of Invention
In order to overcome the problems existing in the related art to at least a certain extent, the application provides a method, a device and a system for testing the ultimate brake performance of a robot.
According to a first aspect of an embodiment of the present application, the present application provides a method for testing the limiting brake performance of a robot, including the following steps:
The current command deceleration and deceleration rate are determined according to the initial command deceleration and joint current value, and the specific process is as follows:
Performing rotation test by using initial instruction deceleration and deceleration acceleration of the robot, and acquiring the instruction speed, the instruction deceleration and the joint actual current of a robot joint motor in the test process;
Judging whether the current instruction deceleration reaches a preset deceleration threshold value and keeps the preset time, if so, further judging whether the joint current is smaller than or equal to a joint brake maximum current limit value and whether the difference value of the joint current and the joint brake maximum current limit value is smaller than or equal to a difference value threshold value, and if so, locking the current instruction deceleration and the deceleration acceleration;
The method is characterized by testing the ultimate braking performance of the robot by utilizing the determined current instruction deceleration and deceleration acceleration, and comprises the following specific processes:
after the robot is braked, acquiring the position information of the tail end of the mechanical arm;
calculating the speed of the tail end of the mechanical arm according to the position information;
Judging whether the speed of the tail end of the mechanical arm meets the braking completion condition, if so, determining the braking time of the robot according to the starting time of the braking of the robot, and determining the braking distance of the robot according to the position information.
In the method for testing the ultimate brake performance of the robot, if the current instruction deceleration is smaller than a preset deceleration threshold value, increasing the deceleration and acceleration; if the commanded deceleration is greater than the preset deceleration threshold, the jerk is decreased.
Further, if the time for which the commanded deceleration reaches the preset deceleration threshold is less than or equal to the preset duration, increasing the jerk; if the time for which the commanded deceleration reaches the preset deceleration threshold is greater than the preset duration, the jerk is reduced.
In the method for testing the limit braking performance of the robot, if the joint current is greater than the maximum joint braking current limit value or the difference between the joint current and the maximum joint braking current limit value is greater than the difference threshold, the current command deceleration is reduced.
In the method for testing the ultimate braking performance of the robot, the specific process of calculating the speed of the tail end of the mechanical arm according to the position information is as follows:
determining the acquisition frequency of the position information so as to determine the acquisition time interval of the position information according to the acquisition frequency of the position information;
Calculating the speed of the tail end of the mechanical arm according to the position information acquired in two adjacent times and the acquisition time interval; the speed of the tail end of the mechanical arm is as follows:
vt=(St-St-1)/t,
Where v t denotes the current speed, S t denotes the position information corresponding to the current position point, S t-1 denotes the position information corresponding to the last acquired position point, and t denotes the time interval for acquiring the position information at the preset acquisition frequency.
Further, the specific process of determining the braking time of the robot according to the braking start time of the robot is as follows:
presetting the acquisition frequency of position information, and determining the number of times of position points acquired in the time from the start of braking to the end of braking;
and determining the braking time of the robot according to the acquisition frequency of the position information and the number of times of the position points acquired in the time from the start of braking to the end of braking.
Further, the specific process of determining the braking distance of the robot according to the position information is as follows:
according to the position information and the number of times of position points acquired in the time period from the start of braking to the end of braking, calculating the length of a braking track at the tail end of the mechanical arm by combining a differential equation so as to determine a braking distance;
the braking distance is as follows:
wherein S represents the braking distance of the tail end of the mechanical arm; s (i+1) represents position information corresponding to the position point acquired for the (i+2) th time; s (i) represents position information corresponding to the (i+1) -th acquired position point.
Further, the tail end braking track of the mechanical arm comprises a linear type movement track and/or a curve type movement track.
According to a second aspect of the embodiment of the present application, the present application further provides a device for testing the ultimate braking performance of a robot, which adopts the method for testing the ultimate braking performance of a robot according to any one of the above embodiments, and includes a deceleration and deceleration determining unit and a testing unit, where the deceleration and deceleration determining unit is configured to determine a deceleration and a deceleration according to a commanded deceleration and a joint current value; the testing unit is used for testing the limit braking performance of the robot by utilizing the locked current instruction deceleration and deceleration acceleration;
The deceleration and deceleration acceleration determining unit comprises a first acquisition module, a first judging module and a second judging module; the first acquisition module is used for acquiring the command speed, the command deceleration and the joint actual current of the robot joint motor in the rotation test process by using the initial command deceleration and the deceleration acceleration of the robot; the first judging module is used for judging whether the current instruction deceleration reaches a preset deceleration threshold value or not and keeping the preset duration; the second judging module is used for judging whether the joint current is smaller than or equal to a joint brake maximum current limit value and whether the difference value between the joint current and the joint brake maximum current limit value is smaller than or equal to a difference value threshold;
The test unit comprises an acquisition module, a calculation module and a braking time and braking distance determination module; the acquisition module is used for acquiring the position information of the tail end of the mechanical arm after the robot is braked; the calculating module is used for calculating the speed of the tail end of the mechanical arm according to the position information of the tail end of the mechanical arm; the braking time and braking distance determining module is used for determining the braking time of the robot according to the braking starting time of the robot when the speed of the tail end of the mechanical arm meets the braking completion condition, and determining the braking distance of the robot according to the position information.
According to a third aspect of the embodiment of the application, the application further provides a system for testing the limit braking performance of the robot, which comprises a measuring target ball, a laser tracker and an upper computer, wherein the upper computer is integrated with a device for testing the limit braking performance of the robot;
the tail end of the mechanical arm of the robot is provided with a measuring target ball, and the laser tracker is used for carrying out light irradiation with the measuring target ball so as to realize detection of track point position information of the measuring target ball; the upper computer is in communication connection with the laser tracker and is used for acquiring the position information of the tail end of the mechanical arm of the robot; the upper computer is also in communication connection with the mechanical arm controller and is used for sending a braking instruction and a preset speed operation instruction to the mechanical arm controller.
According to the above specific embodiments of the present application, at least the following advantages are achieved: according to the method, the device and the system for testing the ultimate braking performance of the robot, provided by the application, the ultimate braking performance of the robot can be tested by utilizing the locked current instruction deceleration and the locked deceleration through debugging the instruction deceleration and the locked deceleration, so that the problem that the ultimate working condition cannot be covered by the conventional braking performance test is solved; in addition, the braking results of different output conditions of the motor in the deceleration process can be obtained, and the safety of the robot in the production, use and other processes can be better ensured.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the scope of the application, as claimed.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more apparent, the spirit of the present disclosure will be clearly described in the following drawings and detailed description, and any person skilled in the art, after having appreciated the embodiments of the present disclosure, may make alterations and modifications by the techniques taught by the present disclosure without departing from the spirit and scope of the present disclosure.
The exemplary embodiments of the present application and the descriptions thereof are intended to illustrate the present application, but not to limit the present application. In addition, the same or similar reference numerals are used for the same or similar parts in the drawings and the embodiments.
The terms "first," "second," …, etc. as used herein do not denote a particular order or sequence, nor are they intended to limit the application, but rather are merely used to distinguish one element or operation from another in the same technical term.
As used herein, the terms "comprising," "including," "having," "containing," and the like are intended to be inclusive and mean an inclusion, but not limited to.
As used herein, "and/or" includes any or all combinations of such things.
Reference herein to "a plurality" includes "two" and "more than two"; the term "plurality of sets" as used herein includes "two sets" and "more than two sets".
Certain words used to describe the application will be discussed below or elsewhere in this specification to provide additional guidance to those skilled in the art in describing the application.
As shown in fig. 1, the method for testing the ultimate braking performance of the robot provided by the embodiment of the application comprises the following steps:
s1, determining the current instruction deceleration and acceleration according to the initial instruction deceleration and joint current values, wherein the specific process is as follows:
S11, performing rotation test by using initial command deceleration and deceleration acceleration of the robot, and acquiring the command speed, command deceleration and joint actual current of a robot joint motor in the test process.
S12, judging whether the current instruction deceleration reaches a preset deceleration threshold value and keeps the preset time period, and if so, entering a step S13; otherwise, the deceleration speed is adjusted, the step S11 is returned, and the rotation test is carried out again.
Specifically, if the commanded deceleration is less than a preset deceleration threshold, increasing the jerk; if the commanded deceleration is greater than the preset deceleration threshold, the jerk is decreased.
If the duration of time for which the instruction deceleration reaches the preset deceleration threshold is less than or equal to the preset duration, increasing the deceleration rate; if the time for which the commanded deceleration reaches the preset deceleration threshold is greater than the preset duration, the jerk is reduced.
The preset duration may be 80ms-120ms.
S13, judging whether the joint current is smaller than or equal to a joint brake maximum current limit value and whether the difference value of the joint current and the joint brake maximum current limit value is smaller than or equal to a difference value threshold value, and if so, locking the current instruction deceleration and deceleration acceleration; otherwise, the flow returns to step S12 to adjust the commanded deceleration.
Specifically, if the joint current is greater than the joint brake maximum current limit or the difference between the joint current and the joint brake maximum current limit is greater than a difference threshold, the current commanded deceleration is reduced.
Wherein the difference threshold may be 8% -10% of the joint brake maximum current limit.
S2, as shown in FIG. 2, testing the limit brake performance of the robot by using the determined current instruction deceleration and deceleration acceleration, wherein the specific process is as follows:
S21, after the braking of the robot is started, acquiring the position information of the tail end of the mechanical arm.
S22, calculating the speed of the tail end of the mechanical arm according to the position information.
Specifically, the speed of the tail end of the mechanical arm is the movement speed of the tail end of the mechanical arm driven by the mechanical arm joint of the robot after the start of the braking of the robot.
After the position information of the tail end of the mechanical arm is obtained, the speed of the tail end of the mechanical arm corresponding to any position point of the tail end of the mechanical arm can be calculated according to the position information corresponding to the position point and the acquisition frequency of the position information based on the calculation relation of the position information and the speed.
S23, judging whether the speed of the tail end of the mechanical arm meets a braking completion condition, if so, determining the braking time of the robot according to the starting time of the braking of the robot, and determining the braking distance of the robot according to the position information; otherwise, the acceleration and the movement range of the joint movement of the mechanical arm are adjusted until the speed of the tail end of the mechanical arm meets the braking completion condition.
Specifically, the speed of the tail end of the mechanical arm is calculated in real time according to the position information acquisition frequency, and whether the tail end of the mechanical arm is braked or not is judged according to the data. And if the speed of the tail end of the mechanical arm meets the braking completion condition, determining the braking time of the robot according to the starting time of the braking of the robot, and determining the braking distance of the robot according to the position information.
The braking completion condition may be that the speed of the end of the mechanical arm is equal to zero. That is, after the start of the braking of the robot, the speed of the arm end is calculated in real time according to the position information acquisition frequency, and if the speed of the arm end is equal to zero, the braking of the arm end is completed.
It should be noted that, single joint or a plurality of joints can be appointed to move, and the braking distance and the braking time of the single joint, the plurality of joints or the whole machine can be calculated by testing the tail end position of the robot, so that the braking performance of the robot is comprehensively evaluated.
In the step S22, the specific process of calculating the speed of the end of the mechanical arm according to the position information is as follows:
s221, determining the acquisition frequency of the position information, so as to determine the acquisition time interval of the position information according to the acquisition frequency of the position information.
Specifically, the acquisition time interval of the position information may be determined according to a preset acquisition frequency of the position information. For example, if the acquisition frequency of the position information is set to 100hz and the position information is acquired 100 times in 1 second, the acquisition time interval of the position information is set to 0.01 second.
S222, calculating the speed of the tail end of the mechanical arm according to the position information acquired in two adjacent times and the acquisition time interval.
Specifically, the current speed of the tail end of the mechanical arm can be calculated according to the position information corresponding to the current position point of the tail end of the mechanical arm, the position information corresponding to the last acquired position point and the preset acquisition frequency, wherein the current speed is as follows:
vt=(St-St-1)/t,
Where v t denotes the current speed, S t denotes the position information corresponding to the current position point, S t-1 denotes the position information corresponding to the last acquired position point, and t denotes the time interval for acquiring the position information at the preset acquisition frequency.
In the step S23, the specific process of determining the braking time of the robot according to the starting time of the braking of the robot is as follows:
The acquisition frequency of the position information is preset, and the number of times of acquiring the position point in the time from the start of braking to the end of braking is determined.
And determining the braking time of the robot according to the acquisition frequency of the position information and the number of times of the position points acquired in the time from the start of braking to the end of braking.
In the step S23, the specific process of determining the braking distance of the robot according to the position information is as follows:
and according to the position information and the number of the position points acquired in the time period from the start of braking to the end of braking, calculating the length of the braking track of the tail end of the mechanical arm by combining a differential equation so as to determine the braking distance.
Specifically, when the speed of the end of the mechanical arm is equal to zero, it is judged that the robot has completed braking. And according to the position information and the number of the position points acquired in the time period from the start of braking to the end of braking, calculating the length of the braking track of the tail end of the mechanical arm by combining a differential equation so as to determine the braking distance. The braking distance is as follows:
Wherein S represents the braking distance of the tail end of the mechanical arm; s (i+1) represents position information corresponding to the position point acquired for the (i+2) th time; s (i) represents position information corresponding to the (i+1) -th acquired position point. The tail end braking track of the mechanical arm comprises a linear type movement track and/or a curve type movement track.
For the braking track at the tail end of the mechanical arm is a curve type movement track, according to the differential thought, the sum of the distances of all the position points acquired in the whole braking process is the braking distance, and compared with the length directly obtained according to the position information, the accuracy of the braking distance can be improved, so that the test result is more accurate, and the braking safety performance can be represented.
According to the method for testing the ultimate braking performance of the robot, provided by the embodiment of the application, the ultimate braking performance of the robot can be tested by utilizing the locked current instruction deceleration and the locked deceleration through debugging the instruction deceleration and the locked deceleration, so that the problem that the ultimate working condition cannot be covered by the conventional braking performance test is solved; in addition, the braking results of different output conditions of the motor in the deceleration process can be obtained, and the safety of the robot in the production, use and other processes can be better ensured.
Based on the method for testing the ultimate brake performance of the robot, which is provided by the embodiment of the application, the application also provides a device for testing the ultimate brake performance of the robot, which comprises a deceleration and acceleration determining unit and a testing unit, wherein the deceleration and acceleration determining unit is used for determining deceleration and deceleration acceleration according to the instruction deceleration and joint current values. The test unit is used for testing the ultimate braking performance of the robot by using the locked current instruction deceleration and deceleration acceleration.
Specifically, the deceleration and deceleration-acceleration determining unit includes a first acquisition module, a first determination module, and a second determination module.
The first acquisition module is used for acquiring the robot joint motor command speed, command deceleration and joint actual current in the rotation test process by using the initial command deceleration and deceleration acceleration of the robot.
The first judging module is used for judging whether the current instruction deceleration reaches a preset deceleration threshold value and keeping the preset duration.
The second judging module is used for judging whether the joint current is smaller than or equal to the joint brake maximum current limiting value and whether the difference value between the joint current and the joint brake maximum current limiting value is smaller than or equal to a difference value threshold value.
Specifically, the test unit comprises an acquisition module, a calculation module and a braking time and braking distance determination module.
The acquisition module is used for acquiring the position information of the tail end of the mechanical arm after the braking of the robot starts.
The calculation module is used for calculating the speed of the tail end of the mechanical arm according to the position information of the tail end of the mechanical arm.
The braking time and braking distance determining module is used for determining the braking time of the robot according to the braking start time of the robot when the speed of the tail end of the mechanical arm meets the braking completion condition, and determining the braking distance of the robot according to the position information.
According to the testing device for the ultimate braking performance of the robot, which is provided by the embodiment of the application, the deceleration and deceleration acceleration determining unit is used for providing the required deceleration and deceleration acceleration for the testing of the ultimate braking performance of the robot, the testing unit is used for obtaining the braking results of the mechanical arm motor under different output conditions in the deceleration process, and the braking distance and the braking time of the tail end of the mechanical arm under the different output conditions are used as the standard for evaluating the ultimate braking performance of the robot, so that the accuracy of the testing of the braking performance of the robot can be improved, and the testing result is beneficial to the safety risk assessment in actual production, so that the working safety of the robot is ensured.
The device for testing the ultimate braking performance of the robot provided in the above embodiment belongs to the same concept as the embodiment of the method for testing the ultimate braking performance of the robot, and the specific implementation process of the device for testing the ultimate braking performance of the robot is detailed in the embodiment of the method for testing the ultimate braking performance of the robot, which is not described herein again.
The embodiment of the application also provides a system for testing the ultimate brake performance of the robot, which comprises a measuring target ball, a laser tracker and an upper computer, wherein the upper computer is integrated with the device for testing the ultimate brake performance of the robot, which is described in any embodiment; the measuring target ball is arranged at the tail end of the mechanical arm of the robot, and the laser tracker is used for carrying out light irradiation with the measuring target ball so as to realize detection of track point position information of the measuring target ball; the upper computer is in communication connection with the laser tracker and is used for acquiring the position information of the tail end of the mechanical arm of the robot; the upper computer is also in communication connection with the mechanical arm controller and is used for sending a braking instruction and a preset speed operation instruction to the mechanical arm controller.
The embodiments of the application described above may be implemented in various hardware, software code or a combination of both. For example, embodiments of the present application may also be program code for performing the above-described methods in a data signal processor. The application may also relate to various functions performed by a computer processor, a digital signal processor, a microprocessor, or a field programmable gate array. The processor described above may be configured in accordance with the present application to perform specific tasks by executing machine readable software code or firmware code that defines the specific methods disclosed herein. The software code or firmware code may be developed in different programming languages and in different formats or forms. The software code may also be compiled for different target platforms. However, the different code patterns, types and languages of software code and other types of configuration code that perform tasks according to the application do not depart from the spirit and scope of the application.
The foregoing is merely illustrative of the embodiments of this application and any equivalent and equivalent changes and modifications can be made by those skilled in the art without departing from the spirit and principles of this application.