Shaft hole assembling method and device and electronic equipment
By installing sensors at the end of the robot arm, the contact force during assembly is detected in real time and the displacement of the assembly shaft is adjusted according to the force error, the vibration and impact problems caused by insufficient force feedback in the shaft hole assembly of the cooperative robot is solved, and the stability and success rate of assembly are improved.
Patent Information
- Application Number
- CN202510050922.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-13
- Publication Date
- 2025-04-04
AI Technical Summary
When performing shaft hole assembly, existing collaborative robots cannot obtain force feedback during the assembly process, resulting in vibration and impact during the assembly process, which increases the risk of assembly failure, especially in the case of high uncertainty of parts.
By installing sensors at the end of the robot arm, the contact force between the assembly shaft and the target workpiece is detected in real time, and the displacement increment is calculated based on the force error, and the robot arm is controlled to move the assembly shaft to maintain constant force and reduce vibration and impact.
It is realized that the displacement of the assembly shaft is adjusted in real time during the shaft hole assembly process to maintain a constant contact force, thereby reducing vibration and impact during the assembly process and improving the stability and success rate of assembly.
Smart Images

Figure CN119748083A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a shaft hole assembly method, device and electronic equipment. Background Art
[0002] At present, collaborative robots have been widely used to automatically perform a variety of industrial tasks, such as welding, spraying, packaging, palletizing, etc. The common feature of these tasks is that the robot's movement is position controlled. However, with the increasing demand for flexible manufacturing, the conventional position-controlled collaborative robots cannot obtain force feedback during the assembly process and can no longer meet the needs of some precision assembly tasks. The assembly between parts often involves assembly force, and it is difficult to achieve automatic assembly of parts by position control. In addition, the uncertainty of the parts to be assembled also increases the difficulty of automatic assembly by robots, such as the uncertainty of end-effector tools, shafts, holes, etc.
[0003] Therefore, the study of automatic assembly of shaft holes based on collaborative robots and how to ensure the safety, stability and smoothness of the assembly process in shaft-hole assembly conditions are of great value for expanding the application of robots in the assembly field. It has become an important topic in the research and application fields for a long time and has received widespread attention from researchers. Summary of the invention
[0004] The purpose of the embodiments of the present invention is to provide a shaft hole assembly method, device and electronic equipment to reduce vibration and impact during the assembly process and avoid the problem of assembly failure.
[0005] In a first aspect, the present invention provides a shaft hole assembly method, which is applied to a robotic arm, wherein a sensor is installed at the end of the robotic arm, and the end also clamps an assembly shaft, and the method comprises:
[0006] Controlling the robot arm to move the assembly axis to contact the surface of the target workpiece, and controlling the robot arm to search for holes along the planned path with the contact point as the starting point;
[0007] During the search process, an actual contact force between the assembly axis and the target workpiece detected by the sensor is obtained;
[0008] Obtaining a force error based on the actual contact force and the target contact force, and calculating a displacement increment according to the force error;
[0009] The robot arm is controlled to move the assembly axis according to the displacement increment so that the assembly axis maintains a constant force with the surface of the target workpiece.
[0010] In an optional embodiment, the step of controlling the robot arm to move the assembly axis to contact the surface of the target workpiece includes:
[0011] Obtaining sensor data between the end of the robotic arm and the assembly axis detected by the sensor;
[0012] Obtaining an angle adjustment amount according to the sensor data;
[0013] Controlling the robot arm to adjust the vertical angle of the assembly axis according to the angle adjustment amount, so that the axial direction of the assembly axis is consistent with the surface normal of the target workpiece;
[0014] The robot arm is controlled to move the assembly axis after the angle adjustment to contact with the surface of the target workpiece.
[0015] In an optional embodiment, the step of controlling the robot arm to move the assembly axis after the angle adjustment to contact the surface of the target workpiece includes:
[0016] obtaining a contact force of the end of the assembly shaft detected by the sensor;
[0017] obtaining a vertical position adjustment amount according to the contact force;
[0018] The robot arm is controlled to move the assembly axis after the angle adjustment according to the vertical position adjustment amount until it contacts the surface of the target workpiece.
[0019] In an optional implementation, the step of obtaining the angle adjustment amount according to the sensor data includes:
[0020] Transforming the sensor data into an end flange coordinate system;
[0021] Obtaining the force and moment in the end flange coordinate system according to the sensor data;
[0022] An angular adjustment is obtained based on the force and the moment.
[0023] In an optional embodiment, the step of obtaining the force and torque in the end flange coordinate system according to the sensor data includes:
[0024] Obtain the rotation matrix and translation matrix between the sensor coordinate system and the end flange coordinate system;
[0025] extracting force data and torque data from the sensor data;
[0026] Calculate the force at the end flange coordinate based on the force data and the rotation matrix;
[0027] The torque in the end flange coordinate system is calculated based on the torque data, the force data, the rotation matrix and the translation matrix.
[0028] In an optional embodiment, the planned path is a spiral trajectory including a plurality of spiral turns;
[0029] The step of controlling the robot arm to search for holes along the planned path comprises:
[0030] Setting the span between every two adjacent spiral turns according to the assembly tolerance between the assembly shaft and the hole, and setting the linear speed during the search;
[0031] Calculate the angular velocity according to the span and the linear velocity;
[0032] The robot arm is controlled to search for holes along the planned path according to the linear velocity, angular velocity and span.
[0033] In an optional implementation, the step of calculating the displacement increment according to the force error includes:
[0034] Set various gain parameters in PID adjustment mode;
[0035] The displacement increment is calculated according to the force error and each gain parameter in accordance with the calculation formula in the PID adjustment method.
[0036] In an optional embodiment, the method further comprises:
[0037] Determining whether a target hole is found based on the actual contact force detected by the sensor during the search process;
[0038] If it is determined that the target hole is found, a vertical displacement increment is obtained according to the actual contact force detected by the sensor and the target contact force;
[0039] The assembly shaft is inserted into the target hole by the mechanical arm according to the vertical displacement increment until the end of the assembly shaft contacts the bottom of the target hole.
[0040] In a second aspect, the present invention provides a shaft hole assembly device, which is applied to a robotic arm, wherein a sensor is installed at the end of the robotic arm, and the end also clamps an assembly shaft, and the device comprises:
[0041] A control module, used to control the robot arm to move the assembly axis to contact the surface of the target workpiece, and control the robot arm to search for holes along the planned path with the contact point as the starting point;
[0042] An acquisition module, used for acquiring the actual contact force between the assembly axis and the target workpiece detected by the sensor during the search process;
[0043] A calculation module, which obtains a force error based on the actual contact force and the target contact force, and calculates a displacement increment according to the force error;
[0044] The control module is further used to control the robot arm to move the assembly axis according to the displacement increment, so that the assembly axis and the surface of the target workpiece maintain a constant force.
[0045] In a third aspect, the present invention provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, and when the processor executes the computer program, the steps of the method described in any one of the aforementioned implementation modes are implemented.
[0046] The present invention provides a shaft-hole assembly method, device and electronic device, which controls a mechanical arm to move the assembly shaft to contact the surface of a target workpiece, and controls the mechanical arm to search for holes along a planned path with the contact point as the starting point. During the search process, the actual contact force between the assembly shaft and the target workpiece detected by the sensor is obtained, and the force error is obtained according to the actual contact force and the target contact force, and the displacement increment is calculated according to the force error. The mechanical arm is controlled to move the assembly shaft according to the displacement increment so that the assembly shaft and the surface of the target workpiece maintain a constant force. This solution is based on real-time force feedback from the sensor, and the displacement increment is obtained based on the force feedback, so that vibration and impact during the assembly process can be reduced, and the problem of assembly failure caused by excessive or insufficient force can be avoided. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments of the present invention are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0048] Figure 1 A flow chart of a shaft hole assembly method provided by an embodiment of the present invention;
[0049] Figure 2 for Figure 1 A flowchart of the sub-steps included in S11;
[0050] Figure 3 for Figure 2 A flowchart of the sub-steps included in S112;
[0051] Figure 4 for Figure 3 A flowchart of the sub-steps included in S1122;
[0052] Figure 5 for Figure 2A flowchart of the sub-steps included in S114;
[0053] Figure 6 A schematic diagram of a planned path in an embodiment of the present invention;
[0054] Figure 7 for Figure 1 A flowchart of the sub-steps included in S12;
[0055] Figure 8 for Figure 1 A flowchart of the sub-steps included in S14;
[0056] Fig. 9 A flow chart of a jacking method in a shaft hole assembly method provided by an embodiment of the present invention;
[0057] Fig.10 A functional module block diagram of a shaft hole assembly device provided by an embodiment of the present invention;
[0058] Fig.11 This is a structural block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0059] The technical solutions in the embodiments of the present invention will be described below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0060] See also Figure 1 , which is a flow chart of the shaft hole assembly method provided in an embodiment of the present invention. The shaft hole assembly method can be performed by a shaft hole assembly device. The shaft hole assembly device can be implemented by software and / or hardware and can be configured in an electronic device. The electronic device can be a computer device that communicates with the collaborative robot, or a controller, processor, etc. in the collaborative robot.
[0061] The collaborative robot includes a mechanical arm, a sensor is installed at the end of the mechanical arm, and an assembly shaft is clamped at the end of the mechanical arm. The detailed steps of the shaft hole assembly method are described as follows.
[0062] S11, controlling the robot arm to move the assembly axis to contact with the surface of the target workpiece.
[0063] S12, taking the contact point as the starting point, controlling the robot arm to search for the hole along the planned path.
[0064] S13, during the search process, obtaining the actual contact force between the assembly axis and the target workpiece detected by the sensor.
[0065] S14, obtaining a force error based on the actual contact force and the target contact force, and calculating a displacement increment according to the force error.
[0066] S15, controlling the robot arm to move the assembly axis according to the displacement increment, so that the assembly axis and the surface of the target workpiece maintain a constant force.
[0067] In this embodiment, the collaborative robot may be, but is not limited to, a six-joint robot, and the sensor installed at the end of the robot arm may be a six-dimensional sensor, which can be used to detect six-dimensional force and torque. After the sensor is installed at the end of the robot arm, the sensor is activated and the sensor zeroing operation is completed.
[0068] A clamping component can be installed at the end of the robot arm, and the robot arm can use the clamping component to clamp the assembly axis. The robot arm can be controlled to carry the assembly axis and move to the top of the target workpiece, for example, it can be a position above the surface of the target workpiece and at a certain distance from the surface.
[0069] On this basis, the robot arm is controlled to move the assembly axis from the top of the target workpiece to the surface of the target workpiece, and the end of the assembly axis contacts the surface of the target workpiece. During the movement, the angle of the assembly axis can be adjusted first, for example, the axis direction of the assembly axis can be adjusted to be consistent with the normal direction of the surface of the target workpiece. The axis of the hole on the target workpiece is consistent with the normal direction of the surface of the target workpiece. Therefore, when the assembly axis after the angle adjustment is subsequently inserted into the hole, it can be inserted vertically into the hole to achieve a good assembly effect.
[0070] After the assembly axis is moved to the surface of the target workpiece, the end of the assembly axis contacts the surface of the target workpiece, and the hole search is performed starting from the contact point.
[0071] In this embodiment, a planned path can be planned in advance, and during the search, the robot arm can be controlled to search for holes according to the planned path. The search range can be a range within a set radius with the contact point as the center.
[0072] During the search process, the robot arm carries the assembly axis and moves on the surface of the target workpiece until the hole is found. After aligning the hole, the assembly axis is inserted into the hole to achieve assembly.
[0073] When the assembly shaft moves on the surface of the target workpiece, the end of the assembly shaft contacts the surface of the target workpiece, and a contact force exists between the two.
[0074] In this embodiment, the actual contact force between the assembly axis and the target workpiece can be detected in real time by the sensor. If the surface of the target workpiece is taken as the plane where the X-axis and Y-axis of the coordinate system are located, the actual contact force detected is mainly the force in the Z-axis direction.
[0075] In addition, a target contact force is also set in advance, and the target contact force can be set based on actual conditions, such as the material of the target workpiece, the flatness of the assembly shaft end, etc. The target contact force is constant, and after the actual contact force is obtained, the force error can be obtained according to the actual contact force and the target contact force. Specifically, the force error can be obtained by subtracting the actual contact force from the target contact force.
[0076] It should be understood that, ideally, the actual contact force at each moment in the search process should be consistent with the target contact force, so that the contact force between the assembly axis and the target workpiece meets the requirements and is constant. However, since the control requires an adjustment process, and there are some deviations in the control process, or the surface of the target workpiece is not completely flat, the robot arm cannot guarantee a constant force between the assembly axis and the target workpiece when it is controlled in a constant posture.
[0077] Based on this, in this embodiment, after the force error is obtained, a displacement increment is obtained based on the force error. It can be understood that the displacement increment can compensate for the deviation of the constant force caused by the force error.
[0078] In this embodiment, the robot arm can be controlled to move the assembly axis according to the displacement increment, mainly to adjust the position of the assembly axis in the Z-axis direction according to the displacement increment, so as to ensure that a constant force is maintained between the assembly axis and the surface of the target workpiece.
[0079] The shaft hole assembly method provided in this embodiment is based on real-time force feedback from the sensor and obtains displacement increments based on the force feedback, thereby reducing vibration and impact during the assembly process and avoiding assembly failures caused by excessive or insufficient force.
[0080] See also Figure 2 In this embodiment, the step of controlling the robot arm to move the assembly axis to contact the surface of the target workpiece can be achieved by:
[0081] S111, obtaining sensor data between the end of the robot arm and the assembly axis detected by the sensor.
[0082] S112: Obtain an angle adjustment amount according to the sensor data.
[0083] S113, controlling the robot arm to adjust the vertical angle of the assembly axis according to the angle adjustment amount, so that the axial direction of the assembly axis is consistent with the surface normal of the target workpiece.
[0084] S114, controlling the robot arm to move the assembly axis after the angle adjustment to contact with the surface of the target workpiece.
[0085] In this embodiment, the sensor installed at the end of the robotic arm can also detect sensor data between the end of the robotic arm and the assembly axis. The sensor data characterizes the mutual force between the end of the robotic arm and the assembly axis. The mutual force includes forces in multiple directions, forces and moments in the X direction, Y direction, and Z direction.
[0086] It can be understood that if the clamping assembly at the end of the robot arm is clamped on the assembly shaft, there is an interaction force between the peripheral side of the clamping assembly and the periphery of the assembly shaft. If the assembly shaft is in a vertical state (taking the surface of the target workpiece as a horizontal plane as an example), the interaction force between the clamping assembly and the assembly shaft should be consistent in all directions on the horizontal plane. If the assembly shaft is in an inclined state, the interaction force between the clamping assembly and the assembly shaft is larger in some directions on the horizontal plane and smaller in some directions.
[0087] When the assembly axis is moved to the surface of the target workpiece, the ideal state is that the assembly axis is perpendicular to the surface of the target workpiece. Therefore, it is necessary to adjust the angle of the assembly axis. Specifically, the angle adjustment amount can be obtained from the detected sensor data, so as to control the robot arm to adjust the vertical angle of the assembly axis according to the angle adjustment amount. The goal of the adjustment is to make the axial direction of the assembly axis consistent with the surface normal of the target workpiece.
[0088] On this basis, the robot arm can be controlled to move the assembly axis with the adjusted angle to the surface of the target workpiece.
[0089] It should be noted that the order of the operation of adjusting the angle of the assembly axis and the operation of moving the assembly axis can be to complete the angle adjustment of the assembly axis first and then move the assembly axis, or the angle adjustment of the assembly axis and the movement of the assembly axis can be performed simultaneously, which is not limited in this embodiment.
[0090] See also Figure 3 In this embodiment, the step of obtaining the angle adjustment amount according to the sensor data can be implemented in the following manner:
[0091] S1121, transforming the sensor data into an end flange coordinate system.
[0092] S1122: Obtain force and torque in the end flange coordinate system according to the sensor data.
[0093] S1123, obtaining an angle adjustment amount based on the force and torque.
[0094] In this embodiment, the sensor data can be transformed from the sensor coordinate system to the end flange coordinate system according to the rotation matrix and the translation matrix between the sensor coordinate system and the end flange coordinate system. The specific transformation formula is as follows:
[0095]
[0096] in, is the rotation matrix between the sensor coordinate system and the end flange coordinate system, is the translation matrix between the sensor coordinate system and the end flange coordinate system, S τ represents the sensor data in the sensor coordinate system, E τ represents the sensor data in the end flange coordinate system.
[0097] The sensor data includes force data and torque data. Therefore, the force data and torque data in the sensor data are extracted respectively and converted to the end flange coordinate system, so that the force and torque in the end flange coordinate system can be obtained. Finally, the angle adjustment amount is obtained based on the force and torque.
[0098] See also Figure 4 In this embodiment, the force and moment in the end flange coordinate system can be obtained by the following method:
[0099] S11221, obtain the rotation matrix and translation matrix between the sensor coordinate system and the end flange coordinate system.
[0100] S11222, extract force data and torque data from the sensor data.
[0101] S11223, calculating the force in the end flange coordinates based on the force data and the rotation matrix.
[0102] S11224, calculating the torque in the end flange coordinate system based on the torque data, the force data, the rotation matrix and the translation matrix.
[0103] From the above, we can know that the rotation matrix between the sensor coordinate system and the end flange coordinate system is The translation matrix between the sensor coordinate system and the end flange coordinate system is: The force data in the sensor data includes the force data in the x-direction, the y-direction, and the z-direction, which can be expressed as F xS 、F yS 、F zS When converting the force data in the sensor data into the force in the end flange coordinate system, it can be achieved by the following formula:
[0104]
[0105] Among them, F E It represents the overall representation of the force in the end flange coordinate system, which is a 3*1 matrix.
[0106] In addition, the torque data in the sensor data also includes the torque data in the X direction, Y direction and Z direction, which can be expressed as M S , and the force data in the sensor data can be expressed as F S Based on this, the moment data can be converted into the moment in the end flange coordinate system in the following way:
[0107]
[0108] Among them, M E It represents the overall representation of the moment in the end flange coordinate system, which is a 3*1 matrix.
[0109] In this embodiment, based on the above-mentioned forces and moments converted to the end flange coordinate system, the angle adjustment required for the assembly axis can be calculated, including the adjustment amount θ around the X axis. x and the adjustment amount θ around the Y axis y That is, under the adjustment of the adjustment amount, the force between the end and the assembly axis detected by the sensor is consistent in all directions of the horizontal plane, and the detected torque is consistent in all directions of the horizontal plane.
[0110] See also Figure 5 In this embodiment, on the basis of the angle adjustment, the assembly axis needs to be moved to the surface of the target workpiece, which can be achieved by:
[0111] S1141, obtaining the contact force of the end of the assembly shaft detected by the sensor.
[0112] S1142: Obtain a vertical position adjustment amount according to the contact force.
[0113] S1143, controlling the robot arm to move the assembly axis after the angle adjustment according to the vertical position adjustment amount until it contacts the surface of the target workpiece.
[0114] In this embodiment, the sensor can detect the contact force at the end of the assembly shaft. When the assembly shaft is not in contact with the target workpiece, the contact force should be zero until it contacts the target workpiece and then gradually increases.
[0115] Based on the detected contact force at the end of the assembly axis, it can be determined whether the assembly axis is in contact with the target workpiece. The control goal of the mobile assembly axis is to move the assembly axis to contact the target workpiece. Therefore, the vertical position adjustment amount can be calculated based on the real-time feedback contact force, and the movement of the assembly axis can be controlled according to the vertical position adjustment amount. Among them, the method of calculating the vertical position adjustment amount based on the contact force will be described in detail later in this embodiment.
[0116] If the angle adjustment of the assembly axis is performed together with the action of moving the assembly axis to the target workpiece surface, the position of the end of the robot arm needs to be determined in combination with the angle adjustment amount and the vertical position adjustment amount in the Z direction during the movement.
[0117] In this embodiment, when adjusting the posture of the end of the robot arm, the center point of the assembly axis should be kept unchanged, and the angle adjustment amount and the vertical position adjustment amount are combined to calculate the posture of the end of the robot arm at the next moment in the following way:
[0118] T after =T before ΔT
[0119]
[0120] Among them, T before Represents the current posture of the end of the robot arm. The posture correction value of ΔT is used to obtain the posture T of the end of the robot arm at the next moment. after . R represents the angle adjustment amount RPY angle θ x and θ y The 3×3 rotation matrix obtained by transformation is P=[00Δz] T Represents the 3×1 displacement matrix obtained by the Z-direction displacement adjustment.
[0121] In this embodiment, in the process of moving the assembly axis from a certain position above the target workpiece to a state of contact with the target workpiece, the above-mentioned attitude compliance method based on admittance control is adopted, and the inner loop based on position control and the outer loop strategy of force control are adopted. By using sensors to capture the contact force with the outside world, the system generates a corrected position instruction through a second-order admittance model to adjust the preset trajectory. This adjusted position information is fed back to the inner loop of the position control to achieve a more precise and smooth control effect, optimizing the interactive performance of the collaborative robot with the environment.
[0122] After the assembly axis is controlled to contact the surface of the target workpiece, a search is started on the target workpiece along the planned path starting from the contact point.
[0123] In the existing common methods, spiral trajectory search and grid search methods are often used, that is, a strategy of blindly searching holes through a predetermined search area and a trajectory covering the entire search space. This method mainly uses a spiral trajectory and grid search method to conduct a wide search in a predetermined area until the location of the assembly hole is found. This method takes a long time to search. For precision shaft hole assembly without chamfers or shaft hole tolerances that are small, the blindness of the spiral trajectory and grid search may lead to inaccurate docking between the assembly shaft and the hole during the assembly process, and is not suitable for precision hole assembly.
[0124] In addition, there is also a hole search algorithm based on a neural network, that is, by recording the force / torque and position data of several groups of shaft-hole pre-assembly, a static assembly model of a force-torque vector diagram is established. During the assembly process, the model is inverted using real-time force and torque values to estimate the relative position of the shaft and the hole. This method requires that the center lines of the shaft and the hole must be parallel, which imposes greater constraints on the assembly process. It relies on the training of neural networks and specific force-torque models at the same time, but once the assembly environment changes (for example, the hole position or tilt angle changes), the model needs to be retrained, and the adaptability is poor.
[0125] Based on the above considerations, in this embodiment, the Archimedean spiral search trajectory is adopted. Figure 6 As shown in , the planned path includes multiple spiral turns, and there is a certain span between two adjacent spiral turns.
[0126] See also Figure 7 In this embodiment, the step of searching along the planned path can be implemented in the following manner:
[0127] S121, setting a span between every two adjacent spiral turns according to an assembly tolerance between the assembly shaft and the hole, and setting a linear speed during searching.
[0128] S122: Calculate an angular velocity according to the span and the linear velocity.
[0129] S123, controlling the robot arm to search for holes along the planned path according to the linear velocity, angular velocity and span.
[0130] Combined with reference Figure 6 As shown in the figure, starting from the contact point at the center, the planned path is formed from the inside to the outside at a constant linear velocity and angular velocity away from the contact point. Where Rd represents the search area, Rs represents the radius of the spiral turn, e represents the span of the spiral turn, and θ represents the polar angle swept by the path curve.
[0131] The span between two adjacent spiral turns in the planned path can be set based on demand, and the linear speed can also be set.
[0132] Wherein, when setting the span of the spiral turn, it can be set based on the assembly tolerance between the assembly shaft and the hole. Specifically, the span of the spiral turn should be slightly smaller than the assembly tolerance, for example, the difference between the assembly tolerance and the span is within a preset range.
[0133] Because when the span of the spiral search is larger than the assembly tolerance, the search path can be shortened, the entire search area can be scanned more quickly, and assembly time can be saved. However, if the span is too large, it is likely that the hole will fall exactly within the span of the spiral search trajectory, and the spiral search will miss the hole position, resulting in search failure. In this case, the hole search success rate is low.
[0134] When the span of the spiral search is smaller than the assembly tolerance and the difference between the two is large, the hole position will be determined to fall within the spiral search trajectory. As the span decreases, the spiral trajectory will pass through the hole position multiple times, and the success rate of searching the hole will be higher. However, this will result in a longer search path for the same search area, increase the search time, and reduce the efficiency of assembly.
[0135] When the span of the spiral search is equal to the assembly tolerance, the search trajectory will pass through the hole position in any case, which can ensure the success of the hole search. And a shorter search path can be obtained to obtain the maximum search efficiency. However, in actual applications, when the span is just tangent to the circle, due to the collaborative robot's insensitivity to force, collaborative robot control delay, too small shaft hole tolerance, and the influence of the assembly environment, the shaft may pass over the hole without sensing the hole, resulting in search failure. Therefore, the span of the spiral search needs to be slightly smaller than the shaft hole tolerance.
[0136] After determining the span, the angular velocity can be calculated according to the following formula in combination with the set linear velocity:
[0137]
[0138] Among them, e represents the span, v represents the linear velocity, and w represents the angular velocity.
[0139] In this way, the robot arm can be controlled to search for holes along the planned path according to the obtained linear velocity, angular velocity and span.
[0140] In this embodiment, the force is detected by the sensor during the search, and the displacement increment is calculated based on the obtained force error, so as to adjust the force between the assembly axis and the target workpiece. Figure 8 In this embodiment, this step can be implemented in the following way:
[0141] S141, setting various gain parameters in the PID adjustment mode.
[0142] S142, calculating a displacement increment according to the force error and each of the gain parameters in accordance with a calculation formula in a PID adjustment method.
[0143] In this embodiment, a constant force control method based on position PID is adopted in the search process. After obtaining the force error e(t) between the actual contact force and the target contact force, the displacement increment is calculated according to the following calculation formula:
[0144]
[0145] Where Δp(t) is the displacement increment adjusted according to the force error, which is used to adjust the movement of the end of the robot arm, and Kp is the proportional gain, K i is the integral gain, K d is the differential gain.
[0146] Among them, the proportional gain, integral gain and differential gain in the above formula need to be set based on multiple factors.
[0147] Specifically, the proportional gain K p , directly generates the control amount according to the current error size, reflecting the instantaneous size of the error. p The system will be more sensitive to force error changes and respond quickly to error changes; however, if K p If it is too large, the system may oscillate or become unstable.
[0148] Integral gain K i , accumulating past errors and processing the long-term deviation of the system, it can eliminate the steady-state error of the system and make the system tend to the target in the long run. i It may cause the steady-state error to persist; too large K i Otherwise, it may cause system overshoot or oscillation.
[0149] Differential gain K d , predict the changing trend of the error and react in advance to avoid over-adjustment. It provides control quantity through the rate of change of the error and plays a "brake" role. d It will amplify the noise in the system and cause system instability.
[0150] Based on the above analysis, the proportional gain, integral gain and differential gain are set, and the force error is converted into a displacement increment according to the above formula. The displacement increment is used to adjust the end of the robot arm, so that the actual contact force can be close to the target contact force, or even consistent with the target contact force.
[0151] It should be noted that, in the process of moving the assembly axis from a certain position away from the target workpiece to contacting the target workpiece, the calculation method of obtaining the vertical position adjustment amount according to the contact force is the same as the calculation method of the displacement increment here, and is not repeated in this embodiment.
[0152] The above process is the process of constant force control during the search process. On this basis, please refer to Fig. 9 The shaft hole assembly method provided in this embodiment also includes the following steps:
[0153] S21, judging whether the target hole is found based on the actual contact force detected by the sensor during the search process.
[0154] S22: If it is determined that the target hole is found, a vertical displacement increment is obtained according to the actual contact force detected by the sensor and the target contact force.
[0155] S23, inserting the assembly shaft into the target hole by the robot arm according to the vertical displacement increment until the end of the assembly shaft contacts the bottom of the target hole.
[0156] It can be understood that during the search process, the sensor performs real-time force detection, and if the assembly axis reaches the position of the target hole, the actual contact force between the assembly axis and the target workpiece detected by the sensor will change significantly. Therefore, it can be determined whether the target hole is found based on the actual contact force.
[0157] When the target hole is found, the assembly shaft needs to be inserted into the target hole. In order to ensure that the assembly hole is inserted into place, the vertical displacement increment required by the assembly shaft can be calculated during the insertion process. Specifically, when the end of the assembly shaft contacts the bottom of the target hole, and the actual contact force between the two is consistent with the target contact force, it can be said that the assembly shaft has been inserted into place.
[0158] Therefore, the vertical displacement increment can be calculated based on the actual contact force and the target contact force, and then the insertion of the assembly axis can be controlled by the robot arm according to the vertical displacement increment.
[0159] The method for calculating the vertical displacement increment based on the actual contact force and the target contact force is consistent with the method for calculating the displacement increment in the above-mentioned search process, and is not described in detail in this embodiment.
[0160] Since the angle of the assembly axis has been adjusted in advance, the assembly axis can be inserted vertically along the axial direction of the hole. However, considering that the angle of the assembly axis may be affected during the search process, in order to ensure the accuracy of the assembly, the above-mentioned attitude compliance method based on admittance control can also be considered to adjust the angle of the assembly axis again during the insertion process. The adjustment method is consistent with the above-mentioned method, and this embodiment will not be described in detail here.
[0161] The shaft-hole assembly method provided in this embodiment uses a PID based on force control to achieve constant force control in the Z direction, which can ensure that the contact force between the shaft and the hole remains stable during the assembly process. It can prevent damage to the workpiece due to excessive force, and also avoid the problem of inability to achieve effective contact due to too little force. Constant force control also provides a stable force feedback signal, making the assembly process more controllable and improving assembly accuracy.
[0162] In addition, the robot's posture adaptability to the assembly process is significantly improved by adjusting the angle in the XY direction through admittance control. The introduction of admittance control can convert torque error and force error into appropriate posture adjustment, so that the assembly axis can adjust its posture compliantly when it contacts the hole edge. This adaptive adjustment method based on torque feedback effectively copes with the influence of factors such as hole chamfer and hole shape error, and greatly improves the assembly reliability under complex working conditions.
[0163] Furthermore, the Archimedes spiral search trajectory used in this embodiment has a strong exploration capability. Through the gradually increasing spiral path, the assembly axis can quickly cover the possible position area of the hole, and combined with the real-time feedback of the force sensor, accurately identify the position of the hole. When the insertion force or torque change is detected, the assembly path is further optimized and adjusted to make the assembly process more efficient. The controllable parameters of the Archimedes spiral (such as the radius increment step) can also be flexibly adjusted according to the specific working conditions, and have strong adaptability.
[0164] Through the above method, the shaft hole assembly method provided by this embodiment has significantly improved assembly efficiency, effectively guaranteed assembly accuracy, and has high adaptability to complex working conditions. The combination of constant force control and admittance control ensures the stability and controllability of the assembly process, avoiding assembly failure or component damage that may occur in traditional rigid control methods. At the same time, the Archimedean spiral search strategy is adopted, so that the robot can quickly complete the positioning of the hole, shorten the operation time, and improve the overall automated assembly efficiency.
[0165] Based on the same inventive concept, please refer to Fig.10 , an embodiment of the present invention further provides a functional module schematic diagram of a shaft hole assembly device. This embodiment can divide the functional modules of the shaft hole assembly device according to the above method embodiment. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present invention is schematic, which is only a logical functional division, and there may be other division methods in actual implementation.
[0166] For example, when each functional module is divided into corresponding functional modules, Fig.10 The shaft hole assembly device shown is only a schematic diagram of the device. The shaft hole assembly device may include a control module, a search module, an acquisition module and a calculation module. The functions of each functional module of the shaft hole assembly device are described in detail below.
[0167] a control module, configured to control the robot arm to move the assembly axis to contact the surface of the target workpiece;
[0168] A search module, used to control the robot arm to search for holes along a planned path with the contact point as the starting point;
[0169] An acquisition module, used for acquiring the actual contact force between the assembly axis and the target workpiece detected by the sensor during the search process;
[0170] A calculation module, which obtains a force error based on the actual contact force and the target contact force, and calculates a displacement increment according to the force error;
[0171] The control module is further used to control the robot arm to move the assembly axis according to the displacement increment, so that the assembly axis and the surface of the target workpiece maintain a constant force.
[0172] It can be understood that the above control module, search module, acquisition module and calculation module can be used to execute the above S11 to S15. The detailed implementation of the control module, search module, acquisition module and calculation module can refer to the relevant contents of the above S11 to S15.
[0173] In a possible implementation, the control module may be used to:
[0174] Obtaining sensor data between the end of the robotic arm and the assembly axis detected by the sensor;
[0175] Obtaining an angle adjustment amount according to the sensor data;
[0176] Controlling the robot arm to adjust the vertical angle of the assembly axis according to the angle adjustment amount, so that the axial direction of the assembly axis is consistent with the surface normal of the target workpiece;
[0177] The robot arm is controlled to move the assembly axis after the angle adjustment to contact with the surface of the target workpiece.
[0178] In a possible implementation, the control module may be used to:
[0179] obtaining a contact force of the end of the assembly shaft detected by the sensor;
[0180] obtaining a vertical position adjustment amount according to the contact force;
[0181] The robot arm is controlled to move the assembly axis after the angle adjustment according to the vertical position adjustment amount until it contacts the surface of the target workpiece.
[0182] In a possible implementation, the control module may be used to:
[0183] Transforming the sensor data into an end flange coordinate system;
[0184] Obtaining the force and moment in the end flange coordinate system according to the sensor data;
[0185] An angular adjustment is obtained based on the force and the moment.
[0186] In a possible implementation, the control module may be used to:
[0187] Obtain the rotation matrix and translation matrix between the sensor coordinate system and the end flange coordinate system;
[0188] extracting force data and torque data from the sensor data;
[0189] Calculate the force at the end flange coordinate based on the force data and the rotation matrix;
[0190] The torque in the end flange coordinate system is calculated based on the torque data, the force data, the rotation matrix and the translation matrix.
[0191] In a possible implementation, the planned path is a spiral trajectory including a plurality of spiral turns, and the search module may be used to:
[0192] Setting the span between every two adjacent spiral turns according to the assembly tolerance between the assembly shaft and the hole, and setting the linear speed during the search;
[0193] Calculate the angular velocity according to the span and the linear velocity;
[0194] The robot arm is controlled to search for holes along the planned path according to the linear velocity, angular velocity and span.
[0195] In a possible implementation, the above-mentioned calculation module may be used to:
[0196] Set various gain parameters in PID adjustment mode;
[0197] The displacement increment is calculated according to the force error and each gain parameter in accordance with the calculation formula in the PID adjustment method.
[0198] In a possible implementation, the control module may also be used to:
[0199] Determining whether a target hole is found based on the actual contact force detected by the sensor during the search process;
[0200] If it is determined that the target hole is found, a vertical displacement increment is obtained according to the actual contact force detected by the sensor and the target contact force;
[0201] The assembly shaft is inserted into the target hole by the mechanical arm according to the vertical displacement increment until the end of the assembly shaft contacts the bottom of the target hole.
[0202] See also Fig.11 , is a block diagram of an electronic device provided in an embodiment of the present invention, which may be a computer device communicating with a collaborative robot, or a controller, processor, etc. in a collaborative robot. The electronic device includes a memory, a processor, and a communication module. The memory, the processor, and the communication module are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components may be electrically connected to each other via one or more communication buses or signal lines.
[0203] The memory is used to store computer programs or data. The memory can be, but is not limited to, random access memory (RAM), read only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), etc.
[0204] The processor is used to read / write data or programs stored in the memory and execute the shaft hole assembly method provided by any embodiment of the present invention.
[0205] The communication module is used to establish a communication connection between the electronic device and other communication terminals through the network, and is used to send and receive data through the network.
[0206] It should be understood that Fig.11 The structure shown is only a schematic diagram of the structure of the electronic device. The electronic device may also include Fig.11 More or fewer components as shown, or with Fig.11 Different configurations are shown.
[0207] Furthermore, an embodiment of the present invention also provides a computer-readable storage medium, which stores machine-executable instructions. When the machine-executable instructions are executed, the shaft hole assembly method provided in the above embodiment is implemented.
[0208] Specifically, the computer-readable storage medium can be a general storage medium, such as a mobile disk, a hard disk, etc. When the computer program on the computer-readable storage medium is executed, the above-mentioned shaft hole assembly method can be executed. Regarding the process involved when the computer-readable storage medium and its executable instructions are executed, reference can be made to the relevant description in the above-mentioned method embodiment, which will not be described in detail here.
[0209] In the embodiments provided by the present invention, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, and the indirect coupling or communication connection of devices or units can be electrical, mechanical or other forms.
[0210] In addition, the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0211] Furthermore, the functional modules in the various embodiments of the present invention may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
[0212] It should be noted that if the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, and other media that can store program codes.
[0213] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any such actual relationship or order between these entities or operations.
[0214] The above description is only an embodiment of the present invention and is not intended to limit the protection scope of the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A shaft hole assembly method, characterized in that: Applied to a robotic arm, a sensor is installed at the end of the robotic arm, and the end also clamps an assembly shaft, and the method includes: Controlling the robot arm to move the assembly axis to contact with the surface of the target workpiece; Taking the contact point as a starting point, controlling the robot arm to search for the hole along the planned path; During the search process, an actual contact force between the assembly axis and the target workpiece detected by the sensor is obtained; Obtaining a force error based on the actual contact force and the target contact force, and calculating a displacement increment according to the force error; The robot arm is controlled to move the assembly axis according to the displacement increment so that the assembly axis maintains a constant force with the surface of the target workpiece.
2. The shaft hole assembly method according to claim 1, characterized in that: The step of controlling the robot arm to move the assembly axis to contact the surface of the target workpiece includes: Obtaining sensor data between the end of the robotic arm and the assembly axis detected by the sensor; Obtaining an angle adjustment amount according to the sensor data; Controlling the robot arm to adjust the vertical angle of the assembly axis according to the angle adjustment amount, so that the axial direction of the assembly axis is consistent with the surface normal of the target workpiece; The robot arm is controlled to move the assembly axis after the angle adjustment to contact with the surface of the target workpiece.
3. The shaft hole assembly method according to claim 2, characterized in that: The step of controlling the robot arm to move the assembly axis after the angle adjustment to contact the surface of the target workpiece includes: obtaining a contact force of the end of the assembly shaft detected by the sensor; obtaining a vertical position adjustment amount according to the contact force; The robot arm is controlled to move the assembly axis after the angle adjustment according to the vertical position adjustment amount until it contacts the surface of the target workpiece.
4. The shaft hole assembly method according to claim 2, characterized in that: The step of obtaining the angle adjustment amount according to the sensor data comprises: Transforming the sensor data into an end flange coordinate system; Obtaining the force and moment in the end flange coordinate system according to the sensor data; An angular adjustment is obtained based on the force and the moment.
5. The shaft hole assembly method according to claim 4, characterized in that: The step of obtaining the force and moment in the end flange coordinate system according to the sensor data comprises: Obtain the rotation matrix and translation matrix between the sensor coordinate system and the end flange coordinate system; extracting force data and torque data from the sensor data; Calculate the force at the end flange coordinate based on the force data and the rotation matrix; The torque in the end flange coordinate system is calculated based on the torque data, the force data, the rotation matrix and the translation matrix.
6. The shaft hole assembly method according to claim 1, characterized in that: The planned path is a spiral trajectory including a plurality of spiral turns; The step of controlling the robot arm to search for holes along the planned path comprises: Setting the span between every two adjacent spiral turns according to the assembly tolerance between the assembly shaft and the hole, and setting the linear speed during the search; Calculate the angular velocity according to the span and the linear velocity; The robot arm is controlled to search for holes along the planned path according to the linear velocity, angular velocity and span.
7. The shaft hole assembly method according to claim 1, characterized in that: The step of calculating the displacement increment according to the force error comprises: Set various gain parameters in PID adjustment mode; The displacement increment is calculated according to the force error and each gain parameter in accordance with the calculation formula in the PID adjustment method.
8. The shaft hole assembly method according to claim 1, characterized in that: The method further comprises: Determining whether a target hole is found based on the actual contact force detected by the sensor during the search process; If it is determined that the target hole is found, a vertical displacement increment is obtained according to the actual contact force detected by the sensor and the target contact force; The assembly shaft is inserted into the target hole by the mechanical arm according to the vertical displacement increment until the end of the assembly shaft contacts the bottom of the target hole.
9. A shaft hole assembly device, characterized in that: Applied to a robotic arm, a sensor is installed at the end of the robotic arm, and the end also clamps an assembly shaft. The device includes: a control module, configured to control the robot arm to move the assembly axis to contact the surface of a target workpiece; A search module, used to control the robot arm to search for holes along a planned path with the contact point as the starting point; An acquisition module, used for acquiring the actual contact force between the assembly axis and the target workpiece detected by the sensor during the search process; A calculation module, which obtains a force error based on the actual contact force and the target contact force, and calculates a displacement increment according to the force error; The control module is further used to control the robot arm to move the assembly axis according to the displacement increment, so that the assembly axis and the surface of the target workpiece maintain a constant force.
10. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Robot automatic shaft and hole axis alignment method and system based on plane surface friction
CN112223303A
Blind search method for spaceflight shaft hole assembly right triangle hypotenuse
CN117984326A
Controller, control method, and control program
JP2024115396A
Technique for robot peg-in-hole assembly motion generation
KR102745527B1
Method and apparatus for inserting a member into a hole of another member
US5619782A
Cited By
Method and system for quickly replacing and positioning high-precision mechanical parts
CN120045952A
Material detection and assembly method, device, equipment, medium and program product
CN120375264A
Hole searching method, device and equipment based on shaft hole assembly and medium
CN121315973A
Shaft hole assembling method and equipment and medium
CN121374600A
Shaft hole assembling method, electronic equipment and medium
CN121572315A