Mechanical arm external force collision detection processing method and device, embedded servo driver

By integrated acceleration sensors in the embedded servo drive, using the different data between the acceleration sensing signal and the motor coder signal to detect whether the robotic arm is collided with external forces in real time, solving the problem of detection accuracy and reliability in existing technologies. A low -cost, high -sensitivity external force collision detection was achieved.

CN115922779BActive Publication Date: 2025-01-28SHANGHAI SAGE INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211460216.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-17
Publication Date
2025-01-28
Estimated Expiration
2042-11-17

AI Technical Summary

Technical Problem

The prior art has problems of accuracy and reliability when detecting the collision of external forces during the detection of robotic arm movement, especially in terms of cost and sensitivity.

Method used

By integrated acceleration sensors in the embedded servo drive, the different data between the acceleration sensing signal and the motor coder signal is used to detect whether the robotic arm is collided with external forces and processed accordingly.

Benefits of technology

The real -time, accurate and reliable detection of the external force collision of the robotic arm, reducing the detection cost and improving the sensitivity and safety of the detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115922779B_ABST
    Figure CN115922779B_ABST
Patent Text Reader

Abstract

The present application provides a method and device for detecting and processing external force collision of a robot arm, and an embedded servo driver, which are applied to the field of robot technology, wherein the method for detecting and processing external force collision of a robot arm includes: obtaining the acceleration sensor signal and the motor encoder signal corresponding to the robot arm, wherein the motor encoder signal contains the motor rotation acceleration information; determining the difference data between the acceleration sensor signal and the motor rotation acceleration information; and determining the external force collision condition of the robot arm according to the difference data. By integrating an acceleration sensor in the embedded servo driver and using the data processing capability of the servo driver itself to detect and analyze the external force collision of the robot arm, the technical difficulty of detecting the external force collision of the robot arm during the movement of the robot arm is solved. Compared with other detection and processing schemes, it is not only simple in structure and low in cost, but also can detect and process the external force collision of the robot arm in real time, accurately and reliably.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a method and device for detecting and processing external force collisions of a robotic arm, and an embedded servo driver. Background Art

[0002] Robotic arms generally have multiple degrees of freedom, so that they can perform tasks such as grasping, carrying, and picking objects during actual operation. In addition, safety is crucial during the operation of the robotic arm, especially for collaborative robots, which need to operate in the same operating environment as humans. Whether the robotic arm is safe during operation is a problem that must be considered. At this time, the collision safety of the robotic arm is the most important consideration. Therefore, safety requirements at least include: when the robotic arm is in motion, if the robotic arm body is accidentally subjected to external force, such as a collision with an external object, or a collision with the human body, the action must be stopped immediately to reduce damage.

[0003] At present, there are many ways to detect external force collision, such as torque sensors, multi-degree-of-freedom sensors, current detection, and algorithm models, etc. However, these methods have their own application limitations. For example, torque sensors are expensive. Multi-degree-of-freedom sensors can only accurately detect the forces on the end joints, while their sensitivity to the forces on other joints is reduced. Current detection relies on set thresholds, resulting in low reliability and sensitivity. Accurate algorithm models are also required, etc. Summary of the invention

[0004] In view of this, the embodiments of this specification provide a method and device for detecting and processing external force collisions of a robot arm, and an embedded servo driver. Through a detection and processing solution with a simple structure and low cost, it is possible to solve the detection and processing problem when the robot's robot arm is subjected to external force collisions during movement in real time, accurately and reliably.

[0005] The embodiments of this specification provide the following technical solutions:

[0006] The embodiment of this specification provides a method for detecting and processing external force collision of a robot arm, which is characterized by comprising:

[0007] Acquire an acceleration sensor signal corresponding to the mechanical arm, wherein the acceleration sensor signal is an equivalent acceleration signal of a signal obtained by the acceleration sensor in a transverse plane, and the transverse plane is a plane perpendicular to the axial direction of the mechanical arm, and the servo driver of the mechanical arm is integrated with the acceleration sensor;

[0008] Acquire a motor encoder signal corresponding to the robotic arm, wherein the motor encoder signal includes motor rotation acceleration information;

[0009] Determining difference data between the acceleration sensor signal and the motor rotation acceleration information;

[0010] The external force collision condition of the robot arm is determined according to the difference data.

[0011] Preferably, obtaining an acceleration sensor signal corresponding to the robotic arm includes:

[0012] Determining the angle relationship between the coordinate system of the acceleration sensor and the coordinate system of the robotic arm;

[0013] According to the angle relationship, the signal obtained by the acceleration sensor is converted into an equivalent signal in the transverse plane of the mechanical arm to serve as the acceleration sensing signal corresponding to the mechanical arm.

[0014] Preferably, determining the difference data between the acceleration sensor signal and the motor rotation acceleration information comprises:

[0015] After the acceleration sensor signal and the motor rotation acceleration information are respectively converted into corresponding frequency domain data in the frequency domain, difference data between the acceleration sensor signal and the motor rotation acceleration information is determined.

[0016] Preferably, after conversion into corresponding frequency domain data in the frequency domain, the frequency domain data corresponding to the acceleration sensor signal is subjected to high-pass filtering, wherein the cutoff frequency of the high-pass filtering is set to the electrical angular frequency of rotation of the motor of the mechanical arm;

[0017] And / or, after conversion into corresponding frequency domain data in the frequency domain, band-pass filtering is performed on the frequency domain data corresponding to the motor rotation acceleration information, wherein the bandwidth of the band-pass filtering is set to twice the frequency increment value.

[0018] Preferably, after determining the difference data between the acceleration sensor signal and the motor rotation acceleration information, the robot arm external force collision detection processing method further includes:

[0019] Performing band-pass filtering on the difference data, wherein the lower limit frequency of the band-pass filtering is set to the frequency corresponding to the motor rotation acceleration information, and the upper limit frequency of the band-pass filtering is set to a preset frequency;

[0020] The result data obtained after bandpass filtering of the difference data is used as the collision frequency component signal corresponding to the collision of the robotic arm by the current external force, wherein the amplitude corresponding to the collision frequency component signal is recorded as Ac, the frequency is recorded as fc, and the collision time length is recorded as tc.

[0021] Preferably, determining the external force collision condition of the mechanical arm according to the difference data includes:

[0022] In the frequency domain, energy integration is performed on the collision frequency component signal;

[0023] The result of the energy integration is compared with a preset threshold value to determine the external force collision condition of the robot arm, and the threshold value is used as a threshold for collision classification when the robot arm is hit by an external force.

[0024] Preferably, before performing energy integration on the collision frequency component signal, the collision frequency component signal with a collision time length shorter than a preset time is discarded as noise data.

[0025] Preferably, the threshold value is a value input through a human-machine interface of a robot, and the robot is a robot including the mechanical arm;

[0026] Alternatively, the threshold value is a value obtained through the following calibration process: determining the current collision level to be calibrated, obtaining the collision energy corresponding to the instantaneous external force applied to the robot arm, and determining the threshold value corresponding to the current collision level to be calibrated based on the obtained multiple collision energies.

[0027] The embodiment of this specification also provides a robot arm external force collision detection and processing device, including:

[0028] An acceleration sensor integrated in a servo driver of the robot arm, the acceleration sensor is used to detect an external force collision condition of the robot arm and provide an acceleration corresponding to the external force collision;

[0029] The signal processing unit is configured to execute: relevant steps of the robot arm external force collision detection processing method described in any embodiment of this specification.

[0030] An embodiment of the present specification also provides an embedded servo driver, which is arranged inside a robotic arm, wherein the embedded servo driver is integrated with an acceleration sensor for executing relevant steps of the robotic arm external force collision detection processing method described in any embodiment of the present specification.

[0031] Compared with the prior art, the at least one technical solution adopted in the embodiments of this specification can achieve the following beneficial effects:

[0032] By integrating an acceleration sensor into a traditional embedded servo drive and utilizing the drive's own data processing system (i.e., resources and computing power) to detect, analyze, and process external force collisions with the robotic arm, it is possible to sense external force collisions with the robotic arm in real time, accurately, and reliably, thereby solving the technical difficulty of detecting when the robot arm is subjected to external force collisions during its movement. Compared with other detection and processing solutions, this manual provides a direct and reliable robotic arm external force collision detection and processing solution, thereby providing the robot controller with real-time, accurate, and reliable collision analysis results, thereby ensuring the safety and reliability of the robotic arm in application. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0034] Figure 1 It is a flow chart of the external force collision detection and processing method of the robot arm in this application;

[0035] Figure 2 It is a schematic diagram of the structure of an embedded servo driver integrated with an acceleration sensor in the present application;

[0036] Figure 3 This is a schematic diagram of an installation structure of a servo driver in a robot arm body in this application;

[0037] Figure 4 This is another schematic diagram of the installation structure of the servo drive in the robot body in the present application;

[0038] Figure 5 It is a schematic diagram of the process of collision classification processing in this application;

[0039] Figure 6 is a schematic diagram of collision classification by calculating energy in this application;

[0040] Figure 7 It is a schematic diagram of the process of collision classification calibration in this application;

[0041] Figure 8 It is a schematic diagram of the hardware system architecture of the robot arm external force collision detection and processing device in this application. DETAILED DESCRIPTION

[0042] The embodiments of the present application are described in detail below with reference to the accompanying drawings.

[0043] The following describes the implementation methods of the present application through specific examples, and those skilled in the art can easily understand other advantages and effects of the present application from the contents disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. The present application can also be implemented or applied through other different specific implementation methods, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present application. It should be noted that, in the absence of conflict, the following embodiments and the features in the embodiments can be combined with each other. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work belong to the scope of protection of the present application.

[0044] It should be noted that various aspects of the embodiments within the scope of the appended claims are described below. It should be apparent that the aspects described herein can be embodied in a wide variety of forms, and any specific structure and / or function described herein is merely illustrative. Based on the present application, it should be understood by those skilled in the art that an aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number and aspect described herein can be used to implement the device and / or practice the method. In addition, other structures and / or functionalities other than one or more of the aspects described herein can be used to implement this device and / or practice this method.

[0045] It should also be noted that the illustrations provided in the following embodiments are only schematic illustrations of the basic concept of the present application. The drawings only show components related to the present application rather than being drawn according to the number, shape and size of components in actual implementation. In actual implementation, the type, quantity and proportion of each component may be changed arbitrarily, and the component layout may also be more complicated.

[0046] Additionally, in the following description, specific details are provided to facilitate a thorough understanding of the examples. However, it will be understood by those skilled in the art that the examples can be practiced without these specific details.

[0047] During the in-depth research and improvement exploration of the robotic arm and its driver, it was found that the implementation methods for detecting external force collision can be generally divided into two categories: the method of adding external sensors and the method of estimating external force using software algorithms.

[0048] For example, the most direct method is to install torque sensors at each joint. When the robot arm is hit by external force, it can be directly detected by the torque sensor, so that the action of the robot arm can be stopped under the control of the control system. Its advantage is reliable and accurate detection, but its disadvantage is that the torque sensor is expensive, which greatly increases the overall cost of the robot arm.

[0049] For example, another commonly used solution is to install a 6-DOF force sensor at the end of the robotic arm, which can sense collision forces in 6 directions. This technical solution is more accurate and sensitive in detecting external forces on the end of the robotic arm. However, when other parts of the robotic arm are subjected to external forces, the detection accuracy and reliability are reduced. At the same time, the cost is not low.

[0050] For example, there is another method that uses the current of each joint servo motor to estimate the external force applied to the robot arm. This method is economical and is a sensorless method, but its disadvantage is that it has a threshold value for the size of the external force and is not very sensitive. Only when the external force reaches a certain amplitude can it be reflected in the change of the motor current, thereby estimating the size of the external force. Therefore, the actual effect is that the robot arm often cannot perceive the external force even when it reaches a certain level, and therefore, it often does not achieve the desired effect. If a collision occurs with the human body, it is difficult to be perceived in time and cause injury. Therefore, this method is not reliable and sensitive.

[0051] For example, another implementation method uses the dynamic model of the robotic arm and related real-time operating parameters to construct a robot external force detection observer algorithm, thereby estimating the external force conditions of the robot in real time and achieving the purpose of external collision detection. The advantage of this method is that the algorithm can fully achieve the purpose of sensorless collision detection, but its disadvantage is that it is necessary to establish an accurate mathematical and dynamic model of the robot and then input accurate real-time operating parameters to complete the observation of external forces; the requirements for the precision and accuracy of modeling are relatively high, and the accuracy of the model directly affects the accuracy and reliability of actual observations. In the actual implementation process, there are still certain limitations and challenges to achieve better engineering results.

[0052] From this we can see that although there are many methods for detecting the external force collision of the robotic arm, they all have their limitations.

[0053] After further exploration, it was found that the embedded servo driver, as a necessary driver for the servo joint motor, is generally embedded in the internal space of the robot arm, close to the servo motor. Therefore, if the high-speed computing resources and capabilities inside the servo driver can be used and the detection and analysis of the external force collision of the robot arm can be realized based on its body, without installing an additional external force detection device on the robot arm, it will kill two birds with one stone.

[0054] Based on this, this specification embodiment proposes a processing solution: Figure 1As shown, in view of the embedded servo driver in the servo joint of the mechanical arm, an acceleration sensor is integrated and designed in the servo driver, and when the servo driver is installed inside the mechanical arm (such as the inner wall), the external force touch information received by the mechanical arm can be sensed by the acceleration sensor, and the acceleration sensor will output a corresponding sensor signal. In addition, when the servo driver drives the mechanical arm to perform a preset action (such as moving, grabbing, etc.), the motor encoder in the servo driver outputs a corresponding encoding signal, wherein the encoding signal contains the motor rotation acceleration information. Therefore, the acceleration sensor signal detected in real time by the acceleration sensor and the motor rotation acceleration information output in real time by the servo driver can be used. Through the degree of difference between the two, it can be determined whether the mechanical arm has an external force collision and / or the degree of external force collision, and then the relevant actions are performed in real time according to the judgment result, which can ensure the safety of the mechanical arm in operation.

[0055] Therefore, by utilizing the acceleration sensor integrated in the embedded servo driver in the mechanical arm, the embedded joint motor servo driver only needs to be installed, and no external force collision detection sensors, such as various torque sensors, are required to be installed, so that the detection function of external force collision can be realized, which can not only improve the safety of the mechanical arm, but also realize the simple structure, low cost, high detection accuracy and high reliability of external force collision detection. In addition, the original embedded servo driver is integrated with the acceleration sensor, and after processing based on the acceleration information given by the acceleration sensor and the encoding information given by the motor encoder (including the motor rotation acceleration information), the original embedded servo driver also has a new function of external force collision detection.

[0056] The technical solutions provided by various embodiments of the present application are described below in conjunction with the accompanying drawings.

[0057] 1. Embedded Servo Drive

[0058] like Figures 2 to 4 As shown, the present embodiment provides an embedded servo driver, which is a high power density, embedded joint servo driver for driving a servo motor 600 (also referred to as a joint motor) in a mechanical arm joint. It has the characteristics of small size and can be completely installed inside the mechanical arm, close to the servo motor. The servo motor 600 (such as a motor encoder) and the servo driver 200 can be connected by a short cable 700, which has high reliability.

[0059] During implementation, when the driver is installed inside a robotic arm, a raised platform 400 is generally manufactured on the inner wall surface near the joint of the robotic arm for installing the servo driver 200. The power control board 220 at the bottom of the servo driver 200 is installed on the raised platform 400 by screws 500, and thermal grease can be filled in between to facilitate heat dissipation of the driver.

[0060] In the present technical solution, the acceleration sensor 300 is integrated on the power control board 220 of the servo driver 200, that is, the bottom power board, so that the collision information of the robot arm can be transmitted to the acceleration sensor more accurately.

[0061] In one example, the servo driver 200 is installed on the first body 120 of the robot arm.

[0062] In one example, if Figure 2 As shown in the figure, the servo driver 200 may be a structure arranged in layers according to circuit functions, wherein the upper layer of the servo driver 200 is a signal processing board 210 (for example, the processing board includes functions such as signal control and signal processing), and the lower layer is a power control board 220 (for example, the power control board includes several items such as a power circuit that needs heat dissipation, a heat sink, and a heat dissipation substrate).

[0063] The following description takes the acceleration sensor integrated on the power control board 220 as an example, but it should not constitute a limitation on the present application.

[0064] 2. Installation method of the driver inside the robot arm and synthetic signal processing

[0065] like Figure 2 As shown, first establish a corresponding coordinate system for the acceleration sensor, such as the xyz coordinate system. The xy coordinate plane is the power board plane, which is parallel to the installation plane, and the z axis is perpendicular to the installation plane. At this time, the acceleration sensor can output the detected acceleration value in the three axis directions, that is, the acceleration sensing signal that can be obtained by the acceleration sensor.

[0066] However, when the robot arm is hit by an external force, it is usually the outer surface of the robot arm that is hit by the external force. Under this external force collision, the robot arm may cause a new acceleration change in the lateral direction, where the lateral direction is perpendicular to the axial direction of the robot arm. Therefore, the acceleration sensing signals output by the acceleration sensor in the three axial directions can be synthesized into a new acceleration sensing signal in the lateral direction of the robot arm (that is, the equivalent signal of the acceleration signal, here referred to as the equivalent acceleration signal, or referred to as the synthetic signal), and then the synthetic signal can be used to reflect the acceleration of the robot arm in the lateral direction. Finally, the external force collision situation can be determined through the difference between the acceleration signal and the motor rotation acceleration.

[0067] like Figure 3 to Figure 4 In other words, a coordinate system of the acceleration sensor is established, such as an xyz coordinate system, and a coordinate system of the robotic arm is established, such as an XYZ coordinate system, so that data processing is performed according to the two coordinate systems of the acceleration sensor and the robotic arm.

[0068] The following two typical installation methods are used as examples.

[0069] Installation method 1: The xy plane of the acceleration sensor coordinate is perpendicular to the central axis of the robotic arm.

[0070] Figure 3 This is a cutaway view of the internal structure of a robotic arm joint. Figure 3 As shown, in this installation mode, the servo driver 200 is installed inside the joint of the first body 120 (hereinafter referred to as body A) of the robot arm. The acceleration sensor coordinate z-axis is parallel to the central axis of the robot arm. The joint motor stator (i.e. the aforementioned servo motor 600) is located on the body A of the robot arm, and the rotating side is the second body 110 (hereinafter referred to as body B) of the robot arm.

[0071] Assume that the coordinate system of the robot body A is XYZ, and the Z axis coincides with the central axis of the robot body A.

[0072] When the robot arm is touched by an external force, the force direction is mainly in the XY plane; because the z-axis of the acceleration sensor is parallel to the center axis of the robot arm, that is, the angle is 0, the acceleration information detected by the acceleration sensor is mainly distributed in the xy plane, and the xy plane is parallel to the XY plane at this time, so the signal can be directly synthesized. Therefore, the signal synthesis process is as follows:

[0073] Assume that the sensor signals of the acceleration sensor in the x and y directions are α x , α y , then the synthesized signal α in the xy plane xy for:

[0074]

[0075] Furthermore, in this installation mode, α XY As a touch signal reflecting the external force applied to the robot arm in a plane perpendicular to the center axis of the robot arm.

[0076] Installation method 2: The xy plane of the acceleration sensor coordinates is not perpendicular to the center axis of the robotic arm.

[0077] Figure 4 There is an angle θ between the acceleration sensor coordinate xy plane and the center axis of the robotic arm (that is, θ is not zero).

[0078] like Figure 4 As shown in the figure, the acceleration information detected by the acceleration sensor is reflected in the three axes of x, y, and z, that is, the acceleration sensor signal α output by the acceleration sensor x , α y and α z, are all used to reflect the lateral force of the robot arm. At this time, there is an angle θ between the xy plane and the XY plane, so it is necessary to first determine the projection of these signals on the XY plane and then synthesize them. Therefore, the synthesis process of the signal is as follows:

[0079] Determine α z The component in the X direction is α z *sin(θ), and determine α x The component in the X direction is α x *cos(θ), and then determine that the sum of these two components in the X direction is: αZ*sin(θ)+αx*cos(θ);

[0080] Therefore, the composite signal in the XY plane is:

[0081]

[0082] Accordingly, in this installation mode, α XY As a touch signal reflecting the external force applied to the robot arm in a plane perpendicular to the center axis of the robot arm.

[0083] 2. Data processing in external force collision detection

[0084] First, the acceleration sensor signal and the motor rotation acceleration corresponding to the robot arm are obtained respectively, wherein the acceleration sensor signal can be the signal α obtained by synthesizing the sensor signal directly output by the acceleration sensor in the above example. XY , and the motor rotation acceleration α0 can be extracted from the motor encoder signal. Then, based on the difference between the two, the external force collision situation of the robot arm can be determined, such as whether there is a collision, the degree of collision, etc.

[0085] In implementation, α XY Both α0 and α1 can be data obtained by processing the raw data from the acceleration sensor and the motor encoder using the high-speed computing resources and capabilities inside the servo drive. Therefore, there is no need to add corresponding data processing units, and data processing can be performed efficiently based on the existing computing capabilities of the servo drive.

[0086] In some implementation examples, after obtaining α XY After α0 is obtained, it can be processed in the frequency domain to form acceleration data that is more accurate and easier to process later.

[0087] like Figure 1 As shown, the acceleration data is first transformed into the frequency domain and then subjected to corresponding filtering processing.

[0088] The acceleration sensor signal α obtained in the previous example XY, and convert it into the spectrum distribution of signal amplitude and frequency in the frequency domain. And, perform corresponding filtering on the data obtained by frequency domain processing, such as XY The frequency domain converted data is high-pass filtered.

[0089] At the same time, the acceleration signal from the motor rotary encoder (i.e., the motor rotary acceleration α0 in the above example) is converted into the frequency domain to obtain ω0′. The signal is converted into the frequency domain by a frequency conversion method with a center frequency of ω0′ and a width range of Δ Hz The band-pass filter is used for filtering.

[0090] Then, the two filtered acceleration data, namely the acceleration sensor signal α XY The acceleration data after high-pass filtering is subtracted from the acceleration data after band-pass filtering of the motor rotation acceleration α0. The actual effect is that the signal detected by the acceleration sensor caused by motor acceleration is removed from the acceleration sensor signal. The signal component after such processing mainly shows the signal change caused by the external force on the robotic arm.

[0091] Then, based on the difference data obtained after subtraction, such as the degree of difference between the two acceleration signals, the external force collision situation can be determined, such as whether there is a collision, the graded representation of the collision degree, etc., so that the robot can perform corresponding actions according to the obtained collision situation to ensure the safety, accuracy and reliability of the robot arm movement.

[0092] It should be noted that in Figure 1 Where ω0 is the motor rotation electrical angular frequency, in Hz, or rad / sec; α0 is the motor rotation acceleration, in Hz / sec, or rad / sec^2; Δ Hz is the set frequency increment value; ω0′ is the center frequency value corresponding to the motor rotation acceleration α0 in the frequency domain; XY The frequency domain converted data is high-pass filtered by a high-pass filter with a cutoff frequency ω HPFcutoff Take the equivalent electrical angular frequency of the motor rotation speed (i.e. ω0); the bandpass filter for bandpass filtering the frequency domain conversion data of α0 has a bandwidth ω BPF1 The range is ±Δ Hz The frequency range between .

[0093] In some implementation examples, the signal is further shaped by another bandpass filter, whose bandwidth is from ω0 to ω1, where ω1 is the set upper limit frequency value of the bandpass filter; from this, a signal containing only the robot arm collision frequency component is theoretically obtained, with an amplitude Ac, a frequency fc, and a collision time length tc.

[0094] On this basis, the collision degree analysis can be further carried out.

[0095] like Figure 5 As shown, when analyzing and processing the collision degree signal, the first thing is to calculate the collision energy in the frequency domain, and then the collision situation of the robot arm can be classified according to the collision energy.

[0096] First, a collision duration tc_set is set according to the spectrum range of the collision amplitude Ac obtained in the frequency domain. Only collisions longer than the set time are considered valid, and collisions shorter than the time length are considered noise and are not processed.

[0097] For the collision spectrum, the square of the amplitude modulus is taken in the range of ω0 to ω1 and then the total energy value of this collision can be obtained. Then, according to the size of the energy value and the set threshold value, the energy value of this collision is graded, for example.

[0098] In one example, there are 5 levels from minor contact to severe collision, and the collision classification is defined as follows:

[0099] Fc=1: slight collision, such as a light touch by a finger;

[0100] Fc=2: moderately light collision, such as palm touch;

[0101] Fc=3: explicit collision, such as light contact with a hard object or continuous collision with the palm;

[0102] Fc=4: moderate explicit collision, such as contact with a hard object;

[0103] Fc=5: Obvious collision, such as short-term and large collision force.

[0104] It should be noted that the threshold values ​​corresponding to each collision classification, such as the threshold value E corresponding to the 5-level classification C1 To E C4 , the specific value can be preset, or can be adjusted in the application as needed. In addition, the number of classifications and the division strategy can be determined according to the actual application, and are not limited here.

[0105] The calculation expression of the collision energy value is as follows:

[0106]

[0107] In the formula, E C Represents the total collision energy value; Ac represents the amplitude in the collision spectrum.

[0108] Figure 6This is an example of collision classification based on energy calculation performed according to spectrum amplitude. The energy calculation result of touch 1 of the robot arm has exceeded the threshold value Ec1, but has not reached the threshold value Ec2, so the collision is judged to be Fc=1, that is, a slight collision. Touch 2 has exceeded the threshold value Ec2, so the collision is judged to be Fc=2, that is, a medium-light collision. Although touch 2 is still a slight collision, its collision force is slightly higher than the former. If the former is a finger collision, this should be a palm collision.

[0109] Therefore, when the collision classification is determined by the data processing program, the collision level can be determined quickly and accurately based on the peak value of the energy calculation result.

[0110] In some implementation examples, the threshold value of the energy classification can be manually set through a human-machine interface, such as inputting the Fc classification value to be calibrated, such as any one from 1 to 5, from the human-machine HMI interface of the servo drive.

[0111] In some implementation examples, the collision force can be actually applied to the robot arm to allow the servo driver to identify the extent of the collision and automatically set the threshold value, that is, calibrate the collision level. The calibration process is shown as follows:

[0112] like Figure 7 As shown, first, it is necessary to determine which collision classification level is to be calibrated, for example, input the Fc classification value to be calibrated from the human-machine interface (HMI) of the servo drive, such as any number from 1 to 5;

[0113] Then, an external force is artificially applied to the robot arm, and the applied external force is equivalent to the size of the external force of the collision. After three consecutive even repetitions, the built-in control system of the driver automatically calculates the three external force conditions according to the value of the acceleration sensor, mainly calculating the three external force collision energy values, such as Ecx1, Ecx2 and Ecx3, where x represents the input classification value. After the three collisions are executed, the system automatically uses the average value of the three times as the threshold value of the classification, and the 30% increment of the threshold value as the upper limit increment value of the threshold value. Then the current classification calibration is completed.

[0114] To perform other classification calibrations, repeat the above process.

[0115] It should be pointed out that this function flexibly responds to the needs of different application scenarios, and the degree of collision is manually calibrated to meet the requirements of different applications.

[0116] In addition, the angle θ between the acceleration sensor coordinate system and the robot arm coordinate system in the aforementioned example can also be determined by inputting into the HMI interface, and the application setting can be flexibly performed according to the angle θ in the actual application.

[0117] Based on the same inventive concept, a robot arm external force collision detection and processing device is provided, wherein the device can be implemented based on the hardware system architecture of a servo drive.

[0118] like Figure 8 As shown, the system architecture (i.e., the servo drive of the robot arm) may include: a motor control unit (such as a processing control unit based on a DSP processor), an acceleration sensor and a signal processing circuit (such as a filter, an operational amplifier, etc.), an acceleration sensor signal processing unit (such as a digital signal processing unit based on FPGA parallel processing), a motor rotary encoder unit, etc. Therefore, by utilizing the processing resources and computing power integrated in the servo drive, the robot arm external force collision detection processing can be realized without adding an additional expensive processing circuit unit.

[0119] In addition, the servo drive can also be integrated with a communication interface to communicate with the robot controller. Accordingly, the servo drive can also have an HMI human-machine interface to set up and input parameters for the drive.

[0120] In some implementation examples, after the acceleration sensor signal passes through the processing circuit, the subsequent signal data processing algorithm can be run in a hardware platform based on FPGA, such as Figure 8 The FPGA-based acceleration sensor signal processing unit.

[0121] It should be noted that the robot arm external force collision detection and processing device can be based on the above-mentioned system architecture, utilize the relevant resources and computing power in the system architecture, and then can execute the relevant steps of the robot arm external force collision detection and processing method described in any of the aforementioned embodiments, which will not be elaborated here.

[0122] Based on the same inventive concept, an embedded servo driver is provided, which may include the robotic arm external force collision detection and processing device of any of the aforementioned embodiments, or the servo driver is used to execute the relevant steps of the robotic arm external force collision detection and processing method of any of the aforementioned embodiments.

[0123] It should be noted that the servo driver may be the aforementioned example (eg Figure 2 , Figure 3 , Figure 4 and Figure 8 The servo drive shown in any one of the related examples) will not be described in detail here.

[0124] In this specification, the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the product embodiment described later, since it corresponds to the method, the description is relatively simple, and the relevant parts can be referred to the partial description of the system embodiment.

[0125] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.

Claims

1. A method for detecting and processing external force collision of a robot arm, characterized in that: include: Acquire an acceleration sensor signal corresponding to the mechanical arm, wherein the acceleration sensor signal is an equivalent acceleration signal of a signal obtained by the acceleration sensor in a transverse plane, and the transverse plane is a plane perpendicular to the axial direction of the mechanical arm, and the servo driver of the mechanical arm is integrated with the acceleration sensor; Acquire a motor encoder signal corresponding to the robotic arm, wherein the motor encoder signal includes motor rotation acceleration information; Determining difference data between the acceleration sensor signal and the motor rotation acceleration information; The external force collision condition of the robot arm is determined according to the difference data.

2. The method for detecting and processing external force collision of a robot arm according to claim 1, characterized in that: Obtaining the acceleration sensor signal corresponding to the robotic arm includes: Determining the angle relationship between the coordinate system of the acceleration sensor and the coordinate system of the robotic arm; According to the angle relationship, the signal obtained by the acceleration sensor is converted into an equivalent signal in the transverse plane of the mechanical arm to serve as the acceleration sensing signal corresponding to the mechanical arm.

3. The method for detecting and processing external force collision of a robot arm according to claim 1, characterized in that: Determining the difference data between the acceleration sensor signal and the motor rotation acceleration information includes: After the acceleration sensor signal and the motor rotation acceleration information are respectively converted into corresponding frequency domain data in the frequency domain, difference data between the acceleration sensor signal and the motor rotation acceleration information is determined.

4. The method for detecting and processing external force collision of a robot arm according to claim 3, characterized in that: After conversion into corresponding frequency domain data in the frequency domain, high-pass filtering is performed on the frequency domain data corresponding to the acceleration sensor signal, wherein the cutoff frequency of the high-pass filtering is set to the electrical angular frequency of rotation of the motor of the robotic arm; And / or, after conversion into corresponding frequency domain data in the frequency domain, band-pass filtering is performed on the frequency domain data corresponding to the motor rotation acceleration information, wherein the bandwidth of the band-pass filtering is set to twice the frequency increment value.

5. The method for detecting and processing external force collision of a robot arm according to claim 3, characterized in that: After determining the difference data between the acceleration sensor signal and the motor rotation acceleration information, the mechanical arm external force collision detection processing method further includes: Performing band-pass filtering on the difference data, wherein the lower limit frequency of the band-pass filtering is set to the frequency corresponding to the motor rotation acceleration information, and the upper limit frequency of the band-pass filtering is set to a preset frequency; The result data obtained after bandpass filtering of the difference data is used as the collision frequency component signal corresponding to the collision of the robotic arm by the current external force, wherein the amplitude corresponding to the collision frequency component signal is recorded as Ac, the frequency is recorded as fc, and the collision time length is recorded as tc.

6. The method for detecting and processing external force collision of a robot arm according to claim 5, characterized in that: Determining the external force collision condition of the mechanical arm according to the difference data includes: In the frequency domain, energy integration is performed on the collision frequency component signal; The result of the energy integration is compared with a preset threshold value to determine the external force collision condition of the robot arm, and the threshold value is used as a threshold for collision classification when the robot arm is hit by an external force.

7. The method for detecting and processing external force collision of a robot arm according to claim 6, characterized in that: Before performing energy integration on the collision frequency component signal, the collision frequency component signal whose collision time length is less than the preset time is discarded as noise data.

8. The method for detecting and processing external force collision of a robot arm according to claim 6, characterized in that: The threshold value is a value input through a human-machine interface of a robot, and the robot is a robot including the mechanical arm; Alternatively, the threshold value is a value obtained through the following calibration process: determining the current collision level to be calibrated, obtaining the collision energy corresponding to the instantaneous external force applied to the robot arm, and determining the threshold value corresponding to the current collision level to be calibrated based on the obtained multiple collision energies.

9. A robot arm external force collision detection and processing device, characterized in that: include: An acceleration sensor integrated in a servo driver of the robot arm, the acceleration sensor is used to detect an external force collision condition of the robot arm and provide an acceleration corresponding to the external force collision; The signal processing unit is configured to execute: the steps of the robot arm external force collision detection processing method as described in any one of claims 1 to 8.

10. An embedded servo driver, characterized in that: The embedded servo driver is arranged inside the robotic arm, wherein the embedded servo driver is integrated with an acceleration sensor for executing the steps of the robotic arm external force collision detection processing method as claimed in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Flexible control method for mobile double-arm robot

    CN115194768A

  • Robot device

    JP2020069624A