CN115389077A - Collision detection method and device, control equipment and readable storage medium - Google Patents

Collision detection method and device, control equipment and readable storage medium Download PDF

Info

Publication number
CN115389077A
CN115389077A CN202211030065.1A CN202211030065A CN115389077A CN 115389077 A CN115389077 A CN 115389077A CN 202211030065 A CN202211030065 A CN 202211030065A CN 115389077 A CN115389077 A CN 115389077A
Authority
CN
China
Prior art keywords
joint
current
speed
deceleration
robot
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.)
Granted
Application number
CN202211030065.1A
Other languages
Chinese (zh)
Other versions
CN115389077B (en
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.)
Faoyiwei Suzhou Robot System Co ltd
Original Assignee
Faoyiwei Suzhou Robot System 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 Faoyiwei Suzhou Robot System Co ltd filed Critical Faoyiwei Suzhou Robot System Co ltd
Priority to CN202211030065.1A priority Critical patent/CN115389077B/en
Priority claimed from CN202211030065.1A external-priority patent/CN115389077B/en
Publication of CN115389077A publication Critical patent/CN115389077A/en
Application granted granted Critical
Publication of CN115389077B publication Critical patent/CN115389077B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L5/00Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
    • G01L5/0052Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes measuring forces due to impact
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L5/00Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
    • G01L5/0061Force sensors associated with industrial machines or actuators
    • G01L5/0076Force sensors associated with manufacturing machines

Abstract

The embodiment of the application provides a collision detection method, a collision detection device, control equipment and a readable storage medium, and relates to the technical field of robots. The method comprises the following steps: obtaining current information of each joint of the robot, wherein the current information comprises current state information and motor torque serving as current control quantity; based on a model predictive control algorithm, obtaining the motor torque at the next moment according to the current information; and judging whether the robot collides at present according to the motor torque and the preset torque at the next moment. Therefore, collision can be detected in time, the whole motion process of the robot is stable, and misdetection is reduced.

Description

Collision detection method and device, control equipment and readable storage medium
Technical Field
The application relates to the technical field of robots, in particular to a collision detection method, a collision detection device, a control device and a readable storage medium.
Background
In order to adapt to a more complex working environment by using the robot to meet the requirements of human services, the safety problem in the human-computer interaction process needs to be solved. The mechanical arms of the robot generate strong force during the movement process, and are dangerous or even destructive when accidentally contacting with human bodies or other objects. The safety problem of the mechanical arm is a problem to be solved urgently in the practical application process, particularly in the human-computer interaction process.
The human-computer interaction safety has two directions, namely active safety and passive safety. Active safety is a preventive measure such as safety action before danger occurs to the mechanical arm. Passive safety refers to that when the mechanical arm is in direct contact with people or other objects, the mechanical arm passively makes some safety measures to avoid danger. The current major end point of the study is the latter-passive safety. Therefore, it is an urgent technical problem to be solved by those skilled in the art to provide an effective detection means for detecting a collision in time.
Disclosure of Invention
The embodiment of the application provides a collision detection method, a collision detection device, a control device and a readable storage medium, which can detect collision in time, make the overall motion process of a robot stable and reduce false detection.
The embodiment of the application can be realized as follows:
in a first aspect, an embodiment of the present application provides a collision detection method, where the method includes:
obtaining current information of each joint of the robot, wherein the current information comprises current state information and motor torque serving as current control quantity;
based on a model predictive control algorithm, obtaining the motor torque at the next moment according to the current information;
and judging whether the robot collides currently or not according to the motor torque and the preset torque at the next moment.
In a second aspect, an embodiment of the present application provides a collision detection apparatus, including:
the robot comprises an acquisition module, a control module and a control module, wherein the acquisition module is used for acquiring current information of each joint of the robot, and the current information comprises current state information and motor torque as current control quantity;
the calculation module is used for obtaining the motor torque at the next moment according to the current information based on a model predictive control algorithm;
and the judging module is used for judging whether the robot collides currently according to the motor torque and the preset torque at the next moment.
In a third aspect, an embodiment of the present application provides a control device, including a processor and a memory, where the memory stores machine executable instructions that can be executed by the processor, and the processor can execute the machine executable instructions to implement the collision detection method described in the foregoing embodiment.
In a fourth aspect, the present application provides a readable storage medium, on which a computer program is stored, where the computer program is executed by a processor to implement the collision detection method according to the foregoing embodiment.
According to the collision detection method, the collision detection device, the control equipment and the readable storage medium, current information of each joint of the robot is collected, and the current information comprises current state information and motor torque serving as current control quantity; then, calculating to obtain the motor torque at the next moment according to the current information by using a model predictive control algorithm; and finally, judging whether the robot collides currently or not according to the preset torque and the motor torque at the next moment. Therefore, the joint driving torque is obtained through rolling cycle optimization, the joint driving torque changes along with the state of the robot at any time, the joint driving torque at each moment is the optimal solution in the prediction period, and collision detection is performed on the motor torque at the next moment obtained based on a model prediction control algorithm, so that the overall motion process of the robot is stable, and false detection is reduced.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained according to the drawings without inventive efforts.
Fig. 1 is a block schematic diagram of a control device provided in an embodiment of the present application;
fig. 2 is a schematic flowchart of a collision detection method according to an embodiment of the present disclosure;
fig. 3 is a second schematic flowchart of a collision detection method according to an embodiment of the present application;
FIG. 4 is a flowchart illustrating one of the sub-steps included in step S150 of FIG. 3;
FIG. 5 is a schematic diagram of a control device and a robot communication connection provided in an embodiment of the present application;
FIG. 6 is a second schematic flowchart of the sub-steps included in step S150 in FIG. 3;
FIG. 7 is a block diagram of an exemplary collision detection apparatus according to the present disclosure;
fig. 8 is a second schematic block diagram of a collision detection apparatus according to an embodiment of the present application.
Icon: 100-a control device; 110-a memory; 120-a processor; 130-a communication unit; 200-a collision detection device; 210-an acquisition module; 220-a calculation module; 230-a judgment module; 240-stop control module.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. The components of embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present application, presented in the accompanying drawings, is not intended to limit the scope of the claimed application, but is merely representative of selected embodiments of the application. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present application without making any creative effort, shall fall within the protection scope of the present application.
It is noted that relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a," "8230," "8230," or "comprising" does not exclude the presence of additional like elements in a process, method, article, or apparatus that comprises the element.
The following collision detection means are generally known in the art.
The first means is as follows: the force sensor is added at the tail end of the mechanical arm, so that the collision force of the hand grasping tail end can be accurately detected, but the detection of other parts of the mechanical arm cannot be carried out, and therefore the detection range is limited.
The second means: the collision is detected by adopting sensing skin, in the method, sensing is covered on the whole body of the robot, for example, small stress sensors are distributed on the whole body of the robot, and the collision at any position can be detected. But has the following disadvantages: the wiring is complicated, the anti-interference capability is poor, the calculation amount of the processor is greatly increased, and the system cost is very high. The poor interference resistance means that the disturbance is easily recognized as collision because the sensing covers the whole body of the robot and is sensitive.
The third means: and obtaining the current or the feedback torque of the motor, carrying out inverse kinematics calculation based on the current or the torque, then comparing the obtained current or the torque with the current or the torque obtained previously, and if sudden change occurs, determining that collision occurs. The accuracy of the collision detection mode is poor, so that the robot may shake in the actual operation process, and the operation is not stable.
In view of the above problems, embodiments of the present application provide a collision detection method, apparatus, control device, and readable storage medium, which collect motor torques and state information of each joint of a mechanical arm, and determine collision detection in a model predictive control manner, without adding an external sensor, without increasing additional cost of a detection device, and with a wide detection range. The joint driving torque used in collision detection is obtained through rolling cycle optimization, the joint driving torque changes along with the state of the robot at any time, the joint driving torque is the optimal solution in the prediction period at each moment, the whole motion process of the robot introduced by the method is stable, and false detection can be reduced.
Some embodiments of the present application will be described in detail below with reference to the accompanying drawings. The embodiments described below and the features of the embodiments can be combined with each other without conflict.
Referring to fig. 1, fig. 1 is a block diagram illustrating a control device 100 according to an embodiment of the present disclosure. The control device 100 may be, but is not limited to, a computer, a control box, etc. The control apparatus 100 may analyze whether the robot has collided and control the robot to stop when it is determined that the collision has occurred. The control device 100 and the robot may be two independent devices connected in communication, or may be one device integrated together, for example, the control device 100 is a control unit in the robot. The control device 100 may include a memory 110, a processor 120, and a communication unit 130. The elements of the memory 110, the processor 120 and the communication unit 130 are electrically connected to each other directly or indirectly to realize data transmission or interaction. For example, the components may be electrically connected to each other via one or more communication buses or signal lines.
The memory 110 is used to store programs or data. The Memory 110 may be, but is not limited to, a Random Access Memory (RAM), a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Read-Only Memory (EPROM), an electrically Erasable Read-Only Memory (EEPROM), and the like.
The processor 120 is used to read/write data or programs stored in the memory 110 and perform corresponding functions. For example, the memory 110 stores the collision detection apparatus 200, and the collision detection apparatus 200 includes at least one software functional module which can be stored in the memory 110 in the form of software or firmware (firmware). The processor 120 executes various functional applications and data processing, i.e., implements the collision detection method in the embodiment of the present application, by running software programs and modules stored in the memory 110, such as the collision detection apparatus 200 in the embodiment of the present application.
The communication unit 130 is used to establish a communication connection between the control apparatus 100 and other communication terminals through a network, and to transceive data through the network.
It should be understood that the configuration shown in fig. 1 is merely a schematic configuration of the control device 100, and that the control device 100 may also include more or fewer components than shown in fig. 1, or have a different configuration than shown in fig. 1. The components shown in fig. 1 may be implemented in hardware, software, or a combination thereof.
Referring to fig. 2, fig. 2 is a schematic flow chart of a collision detection method according to an embodiment of the present disclosure. The method is applicable to the control apparatus 100 described above. The following describes a specific flow of the collision detection method in detail. In this embodiment, the method may further include steps S110 to S130.
In step S110, current information of each joint of the robot is obtained.
In this embodiment, current information of each joint of the robot arm of the robot may be collected. The robotic arm may be a lightweight robotic arm. For example, if the robot arm of the robot includes 6 joints, current information of each of the 6 joints may be collected. Wherein the current information may include current state information and a motor torque as a current control amount. The current state information may include speed information indicating a current speed of a motor of the joint and position information of the joint. When collecting, the speed of the joint or the rotational speed of the motor of the joint may be used as the speed information, and then the current speed of the motor of the joint may be determined based on the speed information. And the position information of the joint represents the angular position of the motor of the joint, namely the current motor rotation angle.
It is understood that the motor torque collected as the current control amount is actually the control amount at the last time.
And step S120, based on a model predictive control algorithm, obtaining the motor torque at the next moment according to the current information.
And step S130, judging whether the robot collides currently or not according to the motor torque and the preset torque at the next moment.
In the present embodiment, the collision detection of the robot is determined by a Model Predictive Control (MPC) method. MPC control is actually time-dependent, and uses the current state of the system and the current control variables to implement predictive control of the future state of the system. The control quantity can be known in real time in the process of controlling the robot, and certain collision safety performance is guaranteed. According to the working environment of the robot, a threshold value can be set to be used as a preset torque to be compared with the control quantity so as to judge whether the robot collides with the surrounding environment.
The controlled variable in MPC is obtained as follows.
Firstly, establishing a basic dynamics model of a robot:
Figure BDA0003816848420000071
wherein τ represents a moment of the rotating portion, M (q) represents an inertia amount of the rotating portion,
Figure BDA0003816848420000072
showing the centrifugal force and the Coriolis force of the rotating part, G (q) showing the gravity term compensation of the rotating part, q showing the rotating angle position of the rotating part,
Figure BDA0003816848420000073
indicating rotationThe angular speed of rotation of the location is,
Figure BDA0003816848420000074
indicating the angular acceleration of rotation of the rotating part.
The basic dynamical model is nonlinear, and a prediction model which can be used by the MPC is established on the basis of the basic dynamical model in a linearization and discretization mode:
Y=Fξ(k)+ΦΔU
where Y is the output matrix (i.e., the position matrix), F and Φ are the coefficient matrices,
Figure BDA0003816848420000075
Figure BDA0003816848420000076
Figure BDA0003816848420000077
Δ U is a control quantity matrix, Δ U = [ Δ U (k) Δ U (k + 1).. Δ U (k + Np-1)] T
ξ is the matrix of state quantities,
Figure BDA0003816848420000078
in the above formula, k represents the current time,
Figure BDA0003816848420000079
a measurement matrix is represented that represents the measurement matrix,
Figure BDA00038168484200000710
a matrix of the system is represented,
Figure BDA00038168484200000711
the representation represents the input matrix, np represents the prediction time domain (i.e., the number of prediction steps),
Figure BDA00038168484200000712
indicating the current position and speed of the input,
Figure BDA00038168484200000713
indicating the input control quantity.
And (2) constructing a cost function, solving the control quantity by adopting a quadratic programming form, solving according to the states of the robot at the current moment and the past moment each time, obtaining a series of control quantity data in the future, executing (namely performing collision judgment) by taking only the first item of the solution as the control quantity at the next moment to obtain the actual control quantity of the joint at each running moment, and obtaining the control quantity predicted value of the whole preset track through circular rolling optimization. That is, during the entire movement phase of the robot, the control amount at the next time is predicted by continuously using the current information of each joint, and then collision determination is performed based on the control amount at the next time. The cost function may be constructed in combination with the actual demand, for example, in such a way that the rate of change of the control variable is minimized.
The first term in the control amount matrix obtained by using the above-described prediction model is taken as the motor torque at the next time. Whether the motor torque at the next moment is larger than a preset torque or not can be judged, and if so, the robot can be determined to be collided currently; if not, the robot can be determined not to be collided currently, and normal operation can be continued.
It should be noted that, if the robot includes a plurality of joints, the motor torque at the next moment of each of the plurality of joints is obtained, and when the motor torque at the next moment of at least one of the plurality of joints is greater than the preset torque, it may be determined that the robot is currently collided. And when the motor torque of each joint at the next moment is not greater than the preset torque, determining that the robot is not collided currently.
Therefore, by introducing the MPC control theory, the whole motion process of the robot is stable, the shaking phenomenon of the robot is obviously reduced compared with PID algorithm control, and the collision cannot be detected by mistake.
In case a collision is detected, the robot should be controlled to stop for safety. However, when the prior art detects a collision and stops the movement, few reliable methods for controlling the machine halt exist, and the machine halt is generally direct, so that the situation can cause impact on the whole machine, and further the whole machine is damaged. In the embodiment, whether to perform deceleration control and then stop is determined according to actual conditions, so that impact is reduced, reliable stop is realized,
referring to fig. 3, fig. 3 is a second schematic flow chart of a collision detection method according to an embodiment of the present disclosure. In this embodiment, the current state information includes speed information indicating a current speed of a motor of a joint, and in the case where it is determined that the robot has a collision, the method may further include steps S140 to S160.
Step S140, for each joint, judging whether the joint needs to be decelerated and stopped according to the current speed of the joint and a first preset speed.
In this embodiment, the first preset speed may be set according to the magnitude of the load inertia, or may be set based on other factors, and may be specifically set in combination with an actual demand. The method can judge whether the current speed of the motor of each joint is greater than a first preset speed or not, and if so, the joint can be determined to need to be decelerated and stopped. If not, it may be determined that the joint does not require a deceleration stop. For example, the robot arm of the robot has 6 joints, and whether the joints need to be decelerated and stopped can be judged according to the current speed and the first preset speed of each joint.
It should be noted that, in the case where the robot includes a plurality of joints, if the speeds of the plurality of joints are different, a part of the joints may need to be decelerated and stopped, and a part of the joints may not need to be decelerated and stopped.
If the joint needs to be decelerated and stopped, step S150 is executed. If the joint does not need to be decelerated, step S160 is executed.
And S150, controlling the joint to decelerate, and controlling the joint to stop after deceleration.
And step S160, controlling the joint to stop.
The specific processing manner of controlling the joint shutdown in step S150 and step S150 may be the same.
As a possible implementation manner, the same deceleration acceleration can be directly adopted, each joint needing deceleration is controlled to decelerate, and whether deceleration is finished or not is continuously judged in the deceleration process. If it is determined that deceleration is complete, then deceleration may be stopped and the joint may then be controlled to stop.
The faster the joint speed, the greater the impact on the whole machine during shutdown, and the too slow deceleration can not be used for stopping at a low speed in time. Thus, the level of shutdown can be selected according to the actual demand trade-off. Different shutdown levels correspond to different deceleration accelerations, and different deceleration accelerations correspond to different speed ranges. The higher the speed range is, the higher the corresponding deceleration acceleration is, i.e. the deceleration acceleration corresponding to the speed range with the high speed is greater than the deceleration acceleration corresponding to the speed range with the low speed.
As another possible implementation, the deceleration may be performed by the method shown in fig. 4. Referring to fig. 4, fig. 4 is a flowchart illustrating one of the sub-steps included in step S150 in fig. 3. In this mode, step S150 may include substeps S151 to substep S152.
And a substep S151 of determining a target deceleration acceleration corresponding to the current speed of the joint according to the corresponding relation between the different speed ranges and the different deceleration accelerations.
And a substep S152 of decelerating according to the target deceleration acceleration until the decelerated speed reaches a second preset speed.
In this embodiment, for a joint that needs to be decelerated and stopped, the speed range in which the current speed of the joint is located may be determined according to the current speed indicated by the speed information of the joint and a different speed range. And then, according to the corresponding relation between different speed ranges and different deceleration accelerations, determining the deceleration acceleration corresponding to the speed range in which the current speed of the joint is located, and taking the determined deceleration acceleration as the target deceleration acceleration corresponding to the joint.
Then, the motor of the joint may be controlled to decelerate in accordance with the target deceleration acceleration. And continuously judging whether the speed reaches a second preset speed or not in the process of deceleration. If not, continuing to control the motor of the joint to decelerate according to the target deceleration acceleration; if so, it may be determined that deceleration is complete and deceleration may be stopped.
When the speed is lower than a certain value, the direct stopping does not impact the whole machine, but the deceleration time can be shortened, so that the lowest speed (namely the speed for completing deceleration and directly stopping) for decelerating can be set according to the load inertia. It is understood that the magnitude of the second preset speed may also be set based on other requirements, and a specific setting manner of the magnitude of the second preset speed is not specifically limited herein.
Alternatively, the control device and the robot may be two independent devices as shown in fig. 5, wherein the safety loop board shown in fig. 5 is the control device. The robot comprises 6 drivers, each driver comprises a main control CPU, a motor and the like, and the main control CPU can control the working state of the motor. The safety circuit board comprises a control CPU1, and the control CPU1 is connected with a main control CPU in each driver through an EtherCAT bus. The control CPU1 can perform collision analysis, can perform deceleration analysis under the condition of determining collision, and can send a deceleration instruction to a main control CPU corresponding to a motor through an EtherCAT bus aiming at each motor needing deceleration stop so as to execute the deceleration instruction through the main control CPU to realize the deceleration of the motor.
Alternatively, the control CPU2 or the control CPU3 in the safety circuit board may perform collision analysis, and send the result of the collision analysis to the control CPU1, and the control CPU1 may perform shutdown control when it is determined that a collision has occurred.
For example, if the control CPU1 determines that the motor M1 of the drive 1 needs to be decelerated and stopped, and the corresponding target deceleration acceleration is a, the control CPU1 may send a deceleration instruction to the main control CPU of the drive 1 through the EtherCAT bus, where the deceleration instruction may include the target deceleration acceleration a; the main control CPU of the drive 1 can control the motor to decelerate according to the target deceleration acceleration a. Optionally, the control CPU1 may determine whether the deceleration is completed, or the main control CPU of the driver 1 may determine whether the deceleration is completed, specifically, the actual requirement may be set.
Alternatively, as a possible implementation, the joint may be controlled to stop directly after the motor has completed decelerating.
Alternatively, as another possible implementation, the shutdown may also be performed in the manner shown in fig. 6. Referring to fig. 6, fig. 6 is a second schematic flowchart illustrating the sub-steps included in step S150 in fig. 3. In the present embodiment, step S150 may further include sub-step S153 to sub-step S155.
And a substep S153 of judging whether the joint needs to run in reverse after stopping the deceleration.
In the case where it is determined that reverse operation is required, substeps S154 to substep S155 may be performed. In the case where it is determined that reverse operation is not required, substep S155 may be performed.
And a substep S154 of controlling the joint to reversely travel a preset distance.
And a substep S155 of controlling the joint to stop.
In the present embodiment, after completion of deceleration, for each joint requiring deceleration stop, the following processing is performed: judging whether the joint needs to rebound or not, controlling the joint to rebound for a preset distance when the joint needs to rebound, and stopping; when it is determined that rebound is not required, stopping directly. The reverse rebound after the impact can release the continuous pressure on the collided object, and the specific value of the preset distance of the rebound can be set according to the actual requirement. Wherein, the starting point for calculating the rebound distance is the angle position when the motor starts to rebound.
Wherein optionally, it can be determined whether a reverse movement is required in combination with the actual demand. For example, deformation information of the robot collision position can be obtained, and whether reverse operation is needed or not is judged according to the deformation information; alternatively, it may be determined directly that reverse operation is required for safety. The corresponding preset distance can be the same when different joints rebound, and can also be different, and the actual demand setting after the joint can be saved specifically.
When a dangerous situation (collision or contact with the surface of an object) occurs, a controlled stop (rapid stop or reverse rebound, etc.) is performed, which avoids further damage to the object or other items.
The joint may be controlled to stop when reverse motion is achieved or not required. Optionally, each joint corresponds to a driving unit, and the robot is in a safe state by sending a stop control command to the driving unit corresponding to each joint to disable the motor of the joint. Wherein the stop control command is used to shut off power output and/or lock the motor with a brake.
As shown in fig. 5, in the case of needing to control the joint to stop, the control CPU1 may send a stop control command to the main control CPU of the drivers 1-6 through the EtherCAT bus to cut off power output and lock the motor by the brake. The driver of fig. 5 is a driving unit.
In order to further ensure the shutdown reliability, each driving unit can also comprise a switch, the number of the switches can be 1 or more, and the power supply supplies power to the motor through the switches. When a plurality of switches are included in the driving unit, the plurality of switches may be arranged in series. It is also possible to disconnect the switch in the drive unit after de-enabling the motor to stop the power supply to the motor.
As a possible implementation manner, each driving unit comprises a plurality of switches connected in series, and the power supply supplies power to the motor in the driving unit through a plurality of joints connected in series. The specific number of the plurality of switches may be determined in combination with actual requirements, for example, 2. After de-enabling the motor by sending a shutdown control command, it is also possible to determine whether to shut off the power supply, i.e. whether to shut off the total power. The specific judgment mode of whether to cut off the power supply can be set by combining with actual requirements, for example, the power supply can be directly determined to be cut off, or the power supply can be determined to be cut off under the condition that higher requirements are required for safety. In the case that the power supply needs to be determined, the plurality of switches in each drive unit may be controlled to be turned off so that the power supply stops supplying power to the motor. Therefore, the robot is controlled and guaranteed to be switched to a safe state through multiple paths.
As shown in fig. 5, the safety circuit board further includes a control CPU2 and a control CPU3, and the control CPU1 is connected to the control CPU2 and the control CPU3 in a communication manner. The driver comprises a master control CPU, a digital switch H1, a digital switch H2, 6 MOS (metal oxide semiconductor) tubes and a motor M1 which are sequentially connected in a communication manner, wherein the digital switch H1 is connected with the digital switch H2 in series. Hard-wired control is adopted between the control CPU2 and the digital switches H2 of the drivers, hard-wired control is adopted between the control CPU3 and the digital switches H2 of the drivers, and the two hard-wired controls are independent channels. The control CPU1 can send power-off instructions to the control CPU2 and the control CPU3, the control CPU2 can control the disconnection of the digital switches H2 in the drivers 1-6 through hard connection, and the control CPU3 can control the disconnection of the digital switches H1 in the drivers 1-6 through hard connection, so that the safety control of the power source is realized through two independent channels to strengthen safety protection.
In this embodiment, when an anomaly is detected, the EtherCAT bus communication can be used to ensure that each master control CPU is controlled to start a safety stop process, and the safety control of the power source is realized through different hard-wired control channels, so that the robot is ensured to be switched to a safety state through multiple paths. Therefore, through the redundancy design of the control instruction, the failure of the 1-path control can be avoided, and the safety stop can not be carried out. Compared with a common mode of stopping by single-loop control, the method and the device adopt reliable transmission of multiple paths of control instructions to stop, namely the control instructions related to stopping can be reliably transmitted to the executing mechanism to be controlled to stop, and reliable stopping is ensured.
It should be noted that the sub-step S155 and the step S160 may be processed in the same manner, i.e. all of them cut off the power output and/or the motor locked by the brake, and cut off the power supply when the power supply needs to be cut off.
In order to implement the corresponding steps in the above-described embodiment and various possible manners, an implementation manner of the collision detection apparatus 200 is given below, and optionally, the collision detection apparatus 200 may adopt the device structure of the control device 100 shown in fig. 1. Further, referring to fig. 7, fig. 7 is a block diagram of an impact detection apparatus 200 according to an embodiment of the present disclosure. It should be noted that the basic principle and the technical effects of the collision detection apparatus 200 provided in the present embodiment are the same as those of the above embodiments, and for the sake of brief description, no part of the present embodiment is mentioned, and reference may be made to the corresponding contents in the above embodiments. The collision detecting apparatus 200 may include: an acquisition module 210, a calculation module 220 and a judgment module 230.
The acquisition module 210 is configured to obtain current information of each joint of the robot. Wherein the current information includes current state information and a motor torque as a current control amount.
And the calculating module 220 is configured to obtain the motor torque at the next moment according to the current information based on a model predictive control algorithm.
The determining module 230 is configured to determine whether the robot is currently collided according to the motor torque at the next moment and a preset torque.
Referring to fig. 8, fig. 8 is a second block diagram of a collision detection apparatus 200 according to an embodiment of the present application. In this embodiment, the current state information includes speed information indicating a current speed of a motor of the joint, and the collision detecting apparatus 200 may further include a shutdown control module 240. In the event that a collision is determined, the shutdown control module 240 is configured to: aiming at each joint, judging whether the joint needs to be decelerated and stopped or not according to the current speed of the joint and a first preset speed; controlling the joint to decelerate under the condition that the joint needs to be decelerated and stopped, and controlling the joint to be stopped after deceleration; and controlling the joint to stop under the condition that the deceleration stop is not needed.
Alternatively, the modules may be stored in the memory 110 shown in fig. 1 in the form of software or Firmware (Firmware) or be fixed in an Operating System (OS) of the control device 100, and may be executed by the processor 120 in fig. 1. Meanwhile, data, codes of programs, etc. required to execute the above modules may be stored in the memory 110.
An embodiment of the present application further provides a readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the collision detection method.
In summary, the embodiment of the present application provides a collision detection method, apparatus, control device and readable storage medium, which first collects current information of each joint of a robot, where the current information includes current state information and a motor torque as a current control quantity; then, calculating to obtain the motor torque at the next moment according to the current information by using a model predictive control algorithm; and finally, judging whether the robot collides currently or not according to the preset torque and the motor torque at the next moment. Therefore, the joint driving torque is obtained through rolling cycle optimization, the joint driving torque changes along with the state of the robot at any time, the joint driving torque at each moment is the optimal solution in the prediction period, and collision detection is performed on the motor torque at the next moment obtained based on a model prediction control algorithm, so that the whole motion process of the robot is stable, and false detection is reduced.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
In addition, functional modules in the embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
The functions, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk, and various media capable of storing program codes.
The foregoing is illustrative of only alternative embodiments of the present application and is not intended to limit the present application, which may be modified or varied by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. A collision detection method, characterized in that the method comprises:
obtaining current information of each joint of the robot, wherein the current information comprises current state information and motor torque serving as current control quantity;
based on a model predictive control algorithm, obtaining the motor torque at the next moment according to the current information;
and judging whether the robot collides currently or not according to the motor torque and the preset torque at the next moment.
2. The method of claim 1, wherein the current state information includes speed information indicating a current speed of a motor of a joint, the method further comprising, in the event that a collision is determined to occur:
aiming at each joint, judging whether the joint needs to be decelerated and stopped or not according to the current speed of the joint and a first preset speed;
controlling the joint to decelerate under the condition that the joint needs to be decelerated and stopped, and controlling the joint to be stopped after deceleration;
and controlling the joint to stop under the condition that the deceleration stop is not needed.
3. The method of claim 2, wherein controlling the joint to decelerate in the event a decelerated shutdown is desired comprises:
determining a target deceleration acceleration corresponding to the current speed of the joint according to the corresponding relation between different speed ranges and different deceleration accelerations, wherein the higher the speed range is, the larger the corresponding deceleration acceleration is;
and decelerating according to the target deceleration acceleration until the decelerated speed reaches a second preset speed.
4. The method of claim 2, wherein controlling the joint to stop after deceleration comprises:
after the deceleration is stopped, judging whether the joint needs to run reversely;
controlling the joint to reversely run for a preset distance under the condition of determining that the joint needs to reversely run;
and after the reverse running is completed, controlling the joint to stop.
5. The method of any one of claims 2-4, wherein each joint corresponds to a drive unit, and wherein said controlling the joints to stop comprises:
and sending a shutdown control instruction to a driving unit corresponding to each joint so as to enable the motor of the joint, wherein the shutdown control instruction is used for cutting off power output and/or locking the motor by a locking brake.
6. The method of claim 5, wherein each of the drive units includes a plurality of switches connected in series, and wherein a power source supplies power to the motors in the drive units via the plurality of switches connected in series, and wherein the controlling the joints to stop further comprises:
judging whether to cut off the power supply;
in a case where it is determined that the power supply is to be determined, the plurality of switches in each drive unit are controlled to be turned off so that the power supply stops supplying power to the motor.
7. A collision detection apparatus, characterized in that the apparatus comprises:
the acquisition module is used for acquiring current information of each joint of the robot, wherein the current information comprises current state information and motor torque serving as current control quantity;
the calculation module is used for obtaining the motor torque at the next moment according to the current information based on a model predictive control algorithm;
and the judging module is used for judging whether the robot collides currently according to the motor torque and the preset torque at the next moment.
8. The apparatus of claim 7, wherein the current state information includes speed information indicative of a current speed of a motor of the joint, the apparatus further comprising a shutdown control module to, in the event that a collision is determined to occur:
aiming at each joint, judging whether the joint needs to be decelerated and stopped or not according to the current speed of the joint and a first preset speed;
controlling the joint to decelerate under the condition that the joint needs to be decelerated and stopped, and controlling the joint to be stopped after deceleration;
and controlling the joint to stop under the condition that the deceleration stop is not needed.
9. A control device comprising a processor and a memory, the memory storing machine executable instructions executable by the processor to implement the collision detection method of any one of claims 1 to 6.
10. A readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the collision detection method according to any one of claims 1-6.
CN202211030065.1A 2022-08-26 Collision detection method, collision detection device, control apparatus, and readable storage medium Active CN115389077B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211030065.1A CN115389077B (en) 2022-08-26 Collision detection method, collision detection device, control apparatus, and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211030065.1A CN115389077B (en) 2022-08-26 Collision detection method, collision detection device, control apparatus, and readable storage medium

Publications (2)

Publication Number Publication Date
CN115389077A true CN115389077A (en) 2022-11-25
CN115389077B CN115389077B (en) 2024-04-12

Family

ID=

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1046470A2 (en) * 1999-03-26 2000-10-25 Fanuc Ltd Industrial robot with means for detecting collision and preventing re-collision
JP2009090462A (en) * 2003-07-29 2009-04-30 Panasonic Corp Robot control method and control device
CN103192413A (en) * 2012-01-06 2013-07-10 沈阳新松机器人自动化股份有限公司 Sensor-free robot crash detecting and preventing device and method
CN105082160A (en) * 2015-09-07 2015-11-25 四川大学 Mobile robot operation system having anti-collision function
US20160193731A1 (en) * 2015-01-02 2016-07-07 Stefan Sattler Robotic medical apparatus with collision detection and method for collision detection in a robotic medical apparatus
WO2017141577A1 (en) * 2016-02-15 2017-08-24 オムロン株式会社 Impact prediction device, impact prediction system, control device, impact prediction method, and impact prediction program
CN108000521A (en) * 2017-12-06 2018-05-08 天津大学 One kind is without sensor type cooperation robot collision checking method
EP3351356A1 (en) * 2015-09-16 2018-07-25 Panasonic Intellectual Property Management Co., Ltd. Robot collision detection method
CN110303521A (en) * 2018-03-27 2019-10-08 清华大学 Joint of robot torque signals acquisition system and method
CN110509274A (en) * 2019-08-26 2019-11-29 中科新松有限公司 A kind of robot security's control system
CN110587665A (en) * 2019-09-02 2019-12-20 埃夫特智能装备股份有限公司 Industrial robot joint collision protection method
US20200269423A1 (en) * 2017-09-12 2020-08-27 Hanwha Precision Machinery Co., Ltd. Device and method for controlling cooperative robot
US20200338735A1 (en) * 2019-04-28 2020-10-29 Xi'an Jiaotong University Sensorless Collision Detection Method Of Robotic Arm Based On Motor Current
WO2021008969A1 (en) * 2019-07-12 2021-01-21 Franka Emika Gmbh Collision detection for a robot manipulator
JP2021036390A (en) * 2019-08-30 2021-03-04 国立大学法人京都大学 Nonlinear model prediction control device
CN113021340A (en) * 2021-03-17 2021-06-25 华中科技大学鄂州工业技术研究院 Robot control method, device, equipment and computer readable storage medium
CN114193454A (en) * 2021-12-31 2022-03-18 佛山智能装备技术研究院 Collision response control method, equipment and medium
CN114310895A (en) * 2021-12-31 2022-04-12 达闼科技(北京)有限公司 Robot collision detection method, device, electronic device and storage medium
CN114474076A (en) * 2022-03-28 2022-05-13 法奥意威(苏州)机器人系统有限公司 Robot collision detection method, device, detection equipment and readable storage medium
CN114603599A (en) * 2020-12-08 2022-06-10 山东新松工业软件研究院股份有限公司 Robot collision detection method and device, computer equipment and storage medium

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1046470A2 (en) * 1999-03-26 2000-10-25 Fanuc Ltd Industrial robot with means for detecting collision and preventing re-collision
JP2009090462A (en) * 2003-07-29 2009-04-30 Panasonic Corp Robot control method and control device
CN103192413A (en) * 2012-01-06 2013-07-10 沈阳新松机器人自动化股份有限公司 Sensor-free robot crash detecting and preventing device and method
US20160193731A1 (en) * 2015-01-02 2016-07-07 Stefan Sattler Robotic medical apparatus with collision detection and method for collision detection in a robotic medical apparatus
CN105082160A (en) * 2015-09-07 2015-11-25 四川大学 Mobile robot operation system having anti-collision function
EP3351356A1 (en) * 2015-09-16 2018-07-25 Panasonic Intellectual Property Management Co., Ltd. Robot collision detection method
WO2017141577A1 (en) * 2016-02-15 2017-08-24 オムロン株式会社 Impact prediction device, impact prediction system, control device, impact prediction method, and impact prediction program
US20200269423A1 (en) * 2017-09-12 2020-08-27 Hanwha Precision Machinery Co., Ltd. Device and method for controlling cooperative robot
CN108000521A (en) * 2017-12-06 2018-05-08 天津大学 One kind is without sensor type cooperation robot collision checking method
CN110303521A (en) * 2018-03-27 2019-10-08 清华大学 Joint of robot torque signals acquisition system and method
US20200338735A1 (en) * 2019-04-28 2020-10-29 Xi'an Jiaotong University Sensorless Collision Detection Method Of Robotic Arm Based On Motor Current
WO2021008969A1 (en) * 2019-07-12 2021-01-21 Franka Emika Gmbh Collision detection for a robot manipulator
CN110509274A (en) * 2019-08-26 2019-11-29 中科新松有限公司 A kind of robot security's control system
JP2021036390A (en) * 2019-08-30 2021-03-04 国立大学法人京都大学 Nonlinear model prediction control device
CN110587665A (en) * 2019-09-02 2019-12-20 埃夫特智能装备股份有限公司 Industrial robot joint collision protection method
CN114603599A (en) * 2020-12-08 2022-06-10 山东新松工业软件研究院股份有限公司 Robot collision detection method and device, computer equipment and storage medium
CN113021340A (en) * 2021-03-17 2021-06-25 华中科技大学鄂州工业技术研究院 Robot control method, device, equipment and computer readable storage medium
CN114193454A (en) * 2021-12-31 2022-03-18 佛山智能装备技术研究院 Collision response control method, equipment and medium
CN114310895A (en) * 2021-12-31 2022-04-12 达闼科技(北京)有限公司 Robot collision detection method, device, electronic device and storage medium
CN114474076A (en) * 2022-03-28 2022-05-13 法奥意威(苏州)机器人系统有限公司 Robot collision detection method, device, detection equipment and readable storage medium

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KYU MIN PARK 等: "earning-Based Real-Time Detection of Robot Collisions Without Joint Torque Sensors", IEEE ROBOTICS AND AUTOMATION LETTERS, vol. 6, no. 1, 31 January 2021 (2021-01-31), pages 103, XP011818214, DOI: 10.1109/LRA.2020.3033269 *
刘哲 等: "基于模型预测控制的磨削机器人末端力跟踪控制算法", 山东大学学报(工学版), no. 01, 31 December 2018 (2018-12-31), pages 46 - 53 *
吴海彬 等: "基于动量偏差观测器的机器人碰撞检测算法", 电机与控制学报, vol. 19, no. 05, 31 May 2015 (2015-05-31), pages 101 - 108 *
马志举 等: "无外部传感器的机器人碰撞检测", 测试技术学报, vol. 27, no. 03, 30 June 2013 (2013-06-30), pages 76 - 81 *

Similar Documents

Publication Publication Date Title
US9724827B2 (en) Monitoring a kinematically redundant robot
US20090200978A1 (en) Robot controller having component protecting function and robot control method
CN102785253B (en) Robot system having error detection function of robot and control method thereof
US11531319B2 (en) Failure prediction device and machine learning device
JP5902425B2 (en) Robot control apparatus, disturbance determination method, and actuator control method
US20190001504A1 (en) Method For Detecting A Collision Of A Robot Arm With An Object, And A Robot With A Robot Arm
JP5177008B2 (en) Robot control device and robot
CN111891274B (en) Balance car control method and device and storage medium
CN114589694A (en) Robot collision detection threshold updating method and device and storage medium
JP6708676B2 (en) Abnormality factor identification device
Hofbaur et al. Improving robustness of mobile robots using model-based reasoning
CN115389077A (en) Collision detection method and device, control equipment and readable storage medium
CN115389077B (en) Collision detection method, collision detection device, control apparatus, and readable storage medium
Buchholz et al. Towards adaptive worker assistance in monitoring tasks
JP2005054843A (en) Brake device
EP2910460A1 (en) Inverted mobile body and control method thereof
US20220288773A1 (en) Safe operation of a multi-axis kinematic system
CN111638731B (en) Steering engine, control method thereof and readable storage medium
CN114076598A (en) Method and system for self-checking sensor network
Caccavale et al. A time-delayed observer for fault detection and isolation in industrial robots
JP3165087B2 (en) Industrial robot failure detection method
US11772268B2 (en) Robot collision detection device and method thereof
CN112743535A (en) Self-adaptive collision detection method and device and storage medium
JP2001202134A (en) Control device, its method and alarm output method for the control device
CN114905502B (en) Mechanical arm control method and system, industrial personal computer and storage medium

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
GR01 Patent grant