Mechanical arm positioning method, mechanical arm system and related device

By acquiring the theoretical pose at the end of the robotic arm and calculating the spatial error vector of the actual pose, the theoretical pose is corrected to determine the reference coordinates. This solves the problem of decreased positioning accuracy during the operation of the robotic arm system, realizes online visual feedback positioning compensation, and improves production efficiency and positioning accuracy.

CN121973239APending Publication Date: 2026-05-05BEIJING SIFANG JIBAO ENG TECH +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
BEIJING SIFANG JIBAO ENG TECH
Filing Date
2026-03-31
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing technologies cannot effectively compensate for the decrease in positioning accuracy of robotic arms caused by time-varying factors during system operation, which affects the stability of the production process and product quality.

Method used

When the end effector of the robotic arm reaches the vision acquisition point, it acquires the theoretical pose and calculates the spatial error vector of the actual pose. If it is within the preset range, it corrects the theoretical pose to determine the reference coordinates. Based on the relative positional relationship between the vision acquisition point and the operation point, it calculates the coordinate values ​​of each operation point to achieve online visual feedback positioning compensation.

Benefits of technology

It achieves improved positioning accuracy of robotic arms without interrupting the production process, ensures spatial consistency and overall accuracy of operation point sequences, adapts to diverse scenario requirements, and reduces equipment investment and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121973239A_ABST
    Figure CN121973239A_ABST
Patent Text Reader

Abstract

The invention discloses a mechanical arm positioning method, a mechanical arm system and a related device, and relates to the field of control, and the method specifically comprises the following steps: when the tail end of a mechanical arm reaches a visual collection point and meets a compensation condition, obtaining a theoretical pose of the tail end of the mechanical arm under a base coordinate, and obtaining a calibration plate image; the actual pose of the tail end of the mechanical arm under the base coordinate system is calculated according to the actual pose, then the space error vector between the actual pose and the theoretical pose is calculated, if the current space error is within the preset range, the theoretical pose is corrected according to the space error vector, and the reference coordinate of the tail end of the mechanical arm under the base coordinate system is determined based on the corrected theoretical pose; an online positioning compensation task based on visual feedback at a visual acquisition point is realized; according to the relative position relation between the visual collection point and each operation point and the reference coordinates, the coordinate value of each operation point is calculated to serve as the basis for controlling the tail end of the mechanical arm to be positioned to each operation point, and the positioning compensation task from a single point to the whole operation point position sequence is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of control technology, and in particular to a robotic arm positioning method, robotic arm system and related devices. Background Technology

[0002] With the development of industrial automation, robotic arms, with their advantages of high flexibility, strong stability, and programmability, are widely used in product manufacturing processes. In robotic arm applications that rely on teach paths, it is necessary to control the robotic arm to accurately position itself at several pre-taught discrete operation points before executing actions such as button operations and precision assembly. The positioning accuracy of the robotic arm is a crucial parameter determining its operational efficiency, and it will have a decisive impact on the stability of the production process and the reliability of product quality.

[0003] Currently, before a robotic arm is put into use, a fixed coordinate transformation relationship between the camera and the robotic arm is typically determined using hand-eye calibration technology. Then, during actual use, the workpiece's pose in the robotic arm's coordinate system is determined based on marker points and the pre-determined transformation relationship to achieve the robotic arm's positioning task. However, during long-term system operation, factors such as mechanical wear, temperature changes, and load variations may occur, causing the pre-determined transformation relationship to become inapplicable. This leads to a decrease in the robotic arm's positioning accuracy, adversely affecting the production process.

[0004] Therefore, how to improve the positioning accuracy of the robotic arm during system operation has become a technical problem that urgently needs to be solved by those skilled in the art. Summary of the Invention

[0005] In view of the above problems, this application provides a robotic arm positioning method, a robotic arm system, and related devices to improve the positioning accuracy of the robotic arm during system operation. The specific solution is as follows:

[0006] The first aspect of this application provides a robotic arm positioning method, including:

[0007] When the end of the robotic arm reaches the preset visual acquisition point and meets the preset compensation conditions, the calibration plate image is acquired through the visual acquisition device and the theoretical pose of the end of the robotic arm in the base coordinates is obtained.

[0008] Based on the calibration plate image and the pre-determined hand-eye transformation matrix, the actual pose of the robotic arm's end effector in the base coordinate system is calculated;

[0009] Calculate the spatial error vector between the actual pose and the theoretical pose;

[0010] If the spatial error corresponding to the spatial error vector is within a preset range, the theoretical pose is corrected according to the spatial error vector, and the reference coordinates of the end of the robotic arm in the base coordinate system are determined based on the corrected theoretical pose.

[0011] Based on the relative positional relationship between the visual acquisition points and each operation point, and the reference coordinates, the coordinate values ​​of each operation point are calculated, which serve as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

[0012] A second aspect of this application provides a robotic arm positioning device, comprising:

[0013] The positioning compensation control unit is used to acquire a calibration plate image and the theoretical pose of the end of the robotic arm in the base coordinates by means of a vision acquisition device when the end of the robotic arm reaches a preset vision acquisition point and meets preset compensation conditions.

[0014] The error calculation and compensation unit is used to calculate the actual pose of the end effector of the robotic arm in the base coordinate system based on the calibration plate image and the pre-determined hand-eye conversion matrix, and to calculate the spatial error vector between the actual pose and the theoretical pose; if the spatial error corresponding to the spatial error vector is within a preset range, the theoretical pose is corrected according to the spatial error vector.

[0015] The coordinate update unit is used to determine the reference coordinates of the end effector of the robotic arm in the base coordinate system based on the corrected theoretical pose, and to calculate the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point and the reference coordinates, as the basis for controlling the end effector of the robotic arm to be positioned to each operation point.

[0016] A third aspect of this application provides a robotic arm controller, comprising at least one processor and a memory connected to the processor, wherein:

[0017] The memory is used to store computer programs;

[0018] The processor is used to execute the computer program so that the robotic arm controller can implement the robotic arm positioning method of the first aspect described above.

[0019] A fourth aspect of this application provides a robotic arm system, comprising: a robotic arm controller, and a robotic arm and a vision acquisition device communicatively connected to the robotic arm controller;

[0020] When the end of the robotic arm reaches a preset visual acquisition point and meets preset compensation conditions, the robotic arm control device sends an image acquisition command to the visual acquisition device and obtains the theoretical pose of the end of the robotic arm in the base coordinates.

[0021] The vision acquisition device acquires images of the calibration board and sends the images of the calibration board to the robotic arm control device;

[0022] The robotic arm control device calculates the actual pose of the robotic arm's end effector in the base coordinate system based on the calibration plate image and a pre-determined hand-eye conversion matrix.

[0023] The robotic arm control device calculates the spatial error vector between the actual pose and the theoretical pose;

[0024] When the spatial error corresponding to the spatial error vector is within a preset range, the robotic arm control device corrects the theoretical pose according to the spatial error vector, and determines the reference coordinates of the end of the robotic arm in the base coordinate system based on the corrected theoretical pose.

[0025] The robotic arm control device calculates the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point, as well as the reference coordinates, and uses this as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

[0026] The fifth aspect of this application provides a computer program product including computer-readable instructions that, when executed on an electronic device, cause the electronic device to implement the robotic arm positioning method of the first aspect described above.

[0027] The sixth aspect of this application provides a computer storage medium carrying one or more computer programs, which, when executed by an electronic device, enable the electronic device to implement the robotic arm positioning method of the first aspect described above.

[0028] By employing the above technical solution, this application acquires the theoretical pose of the robotic arm's end effector in the base coordinate system when it reaches the visual acquisition point and meets the compensation conditions, and acquires a calibration plate image. Based on this, the actual pose of the robotic arm's end effector in the base coordinate system is calculated. Then, the spatial error vector between the actual pose and the theoretical pose is calculated. If the current spatial error is within a preset range, the theoretical pose is corrected according to the spatial error vector. Based on the corrected theoretical pose, the reference coordinates of the robotic arm's end effector in the base coordinate system are determined, thus realizing the online visual feedback-based positioning compensation task at the visual acquisition point. Furthermore, based on the relative positional relationship between the visual acquisition point and each operation point, as well as the reference coordinates, the coordinate values ​​of each operation point are calculated as the basis for controlling the robotic arm's end effector to position itself to each operation point. This realizes the positioning compensation task from a single point to the entire operation point sequence, ensuring the spatial consistency and overall accuracy of the entire operation point sequence. This application solves the problem of positioning accuracy attenuation caused by time-varying factors during system operation by performing online positioning compensation based on visual feedback when the robotic arm's end effector reaches the visual acquisition point. Attached Figure Description

[0029] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0030] Figure 1 A schematic diagram of an implementation system architecture provided for an embodiment of this application;

[0031] Figure 2 A flowchart illustrating a robotic arm positioning method provided in an embodiment of this application;

[0032] Figure 3 This is a schematic diagram of the structure of a robotic arm positioning device provided in an embodiment of this application;

[0033] Figure 4 This is a schematic diagram of the structure of a robotic arm controller provided in an embodiment of this application. Detailed Implementation

[0034] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is only for explaining specific embodiments and is not intended to limit the application. Those skilled in the art will recognize that, with technological advancements and the emergence of new scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0035] The applicant discovered through research that offline calibration technology, applied to a high-rigidity, high-precision robotic arm body, can improve the positioning accuracy of the robotic arm to a certain extent. Offline calibration technology refers to establishing a fixed transformation relationship between the camera coordinate system and the robotic arm's end effector coordinate system through hand-eye calibration during system initialization before the robotic arm is put into use. This allows the robotic arm's pose to be determined and its positioning task accomplished during subsequent system operation, based on the pre-calibrated hand-eye transformation matrix (i.e., the fixed transformation relationship between the camera coordinate system and the robotic arm's end effector coordinate system). However, during long-term operation of the robotic arm, factors such as temperature changes, load variations, and mechanical wear can lead to time-varying errors in the system, causing a decrease in the robotic arm's positioning accuracy. Existing technology cannot compensate for time-varying errors during operation; the only way to ensure the robotic arm's positioning accuracy is to stop production and re-calibrate the hand-eye system, severely impacting production efficiency.

[0036] To address the aforementioned problems, this application provides a robotic arm positioning method, a robotic arm system, and related devices, which can be applied to solve the problem of decreased positioning accuracy of robotic arms during system operation, particularly the positioning accuracy problem in robotic arm control tasks based on teach paths. The teach path described in this application can be represented as a sequence of operation points, or a task sequence, which consists of several discrete operation points.

[0037] The robotic arm positioning method provided in this application can be applied to, for example... Figure 1 The system architecture shown may include a terminal 100 and a server 200. The server 200 may include one or more servers (…). Figure 1 (This example uses a server as an illustration).

[0038] Either terminal 100 or server 200 can be used independently to execute the methods provided in the embodiments of this application. Alternatively, terminal 100 and server 200 can also be used collaboratively to execute the methods provided in the embodiments of this application. In the embodiments of this application, terminal 100 can be a controller, mobile phone, computer, etc., and the embodiments of this application do not impose any limitations on this.

[0039] This application provides a robotic arm positioning method to alleviate the problem of decreased positioning accuracy during system operation after the initial calibration of the robotic arm. Taking the application of this method to a computer device as an example, the computer device can specifically be... Figure 1 The system consists of terminal 100 or a combination of terminal 100 and server 200. (Refer to...) Figure 2 The robotic arm positioning method may specifically include the following steps:

[0040] Step S101: When the end of the robotic arm reaches the preset visual acquisition point and meets the preset compensation conditions, the calibration plate image is acquired through the visual acquisition device and the theoretical pose of the end of the robotic arm in the base coordinates is obtained.

[0041] It should be noted that image acquisition is required at the visual acquisition point to determine the actual position of the robotic arm's end effector; that is, the visual acquisition point can refer to a pre-set position that requires visual positioning compensation judgment and calculation. During the execution of each set of actions by the robotic arm according to the task sequence, the robotic arm needs to locate the target operation area corresponding to that set of actions and control the robotic arm to move to the preset operation point. Based on this, the aforementioned visual acquisition point can be any operation point in the operation point sequence.

[0042] The calibration board image acquired by the vision acquisition device refers to an image containing target features. The aforementioned target features refer to known geometric features, which can be used to determine the pose of the calibration board relative to the camera coordinate system.

[0043] The theoretical pose refers to the end-effector pose calculated based on the kinematic modeling of the robotic arm and the angles of each joint, which can be directly read from the robotic arm controller. The pose described in this application includes XYZ displacement and rotation angles relative to the zero point of the coordinate system.

[0044] Furthermore, it should be noted that, based on the above step S101, during the system operation, each time a visual acquisition point is reached, subsequent operations will be performed if the compensation conditions are met.

[0045] Step S102: Calculate the actual pose of the robotic arm's end effector in the base coordinate system based on the calibration plate image and the pre-determined hand-eye conversion matrix.

[0046] The hand-eye transformation matrix is ​​a fixed transformation matrix relative to the end effector of the robotic arm, determined during system initialization using hand-eye calibration techniques. The pose of the calibration board relative to the camera coordinate system can be determined from the calibration board image. Based on this, and combined with the hand-eye transformation matrix, the actual pose of the robotic arm's end effector in the base coordinate system can be determined.

[0047] Step S103: Calculate the spatial error vector between the actual pose and the theoretical pose.

[0048] Step S104: If the spatial error corresponding to the spatial error vector is within a preset range, correct the theoretical pose according to the spatial error vector, and determine the reference coordinates of the end of the robotic arm in the base coordinates based on the corrected theoretical pose.

[0049] The validity of spatial errors can be determined by judging whether the spatial error corresponding to the spatial error vector is within a preset range. If the spatial error corresponding to the spatial error vector is within the preset range, it indicates that the visual data acquired this time is normal. Applying this embodiment can compensate for the current positioning error to a certain extent, preventing the deterioration of positioning accuracy. Conversely, if the spatial error corresponding to the spatial error vector is not within the preset range, it indicates that the visual data acquired this time is abnormal; in this case, no positioning compensation is performed.

[0050] Optionally, the method may further include:

[0051] If the spatial error corresponding to the spatial error vector is not within the preset range, an alarm signal is output to notify manual handling.

[0052] By correcting the theoretical pose based on the spatial error vector, the corrected theoretical pose can be made closer to the actual pose, which can reduce spatial error.

[0053] Step S105: Based on the relative positional relationship between the visual acquisition point and each operation point and the reference coordinates, calculate the coordinate value of each operation point, which serves as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

[0054] The aforementioned relative positional relationships can be represented using a relative relationship model, which is the generation rule from the reference coordinates to the entire operational point network. For example, this model can be represented as P n = f(P_base, Parameters), where P n P_base represents the coordinates of the remaining operation points, P_base represents the reference coordinates, and Parameters represents the parameters reflecting the relative positional relationship. This model can cover various forms such as fixed offset, coordinate transformation, and polar coordinate parameters to adapt to various complex application scenarios.

[0055] In this embodiment, when the end effector of the robotic arm reaches the visual acquisition point and meets the compensation conditions, the theoretical pose of the end effector in the base coordinate system is acquired, and the calibration plate image is acquired. Based on this, the actual pose of the end effector in the base coordinate system is calculated. Then, the spatial error vector between the actual pose and the theoretical pose is calculated. If the current spatial error is within a preset range, the theoretical pose is corrected according to the spatial error vector. Based on the corrected theoretical pose, the reference coordinates of the end effector in the base coordinate system are determined, realizing the online visual feedback-based positioning compensation task at the visual acquisition point. On this basis, according to the relative positional relationship between the visual acquisition point and each operation point and the reference coordinates, the coordinate values ​​of each operation point are calculated as the basis for controlling the end effector of the robotic arm to position to each operation point. This realizes the positioning compensation task from a single visual acquisition point to the entire operation point sequence, ensuring the spatial consistency and overall accuracy of the entire operation point sequence. This makes the embodiment have good scalability and scene adaptability, and can adapt to diverse scene requirements. This embodiment solves the problem of positioning accuracy attenuation caused by time-varying factors such as temperature drift, mechanical wear, and load changes during system operation by performing online positioning compensation based on visual feedback when the end of the robotic arm reaches the vision acquisition point. Moreover, it does not require interruption of the production process, which helps to improve production efficiency.

[0056] Furthermore, the aforementioned visual acquisition points can be any operation point in a preset sequence of operation points. Based on this, this embodiment can realize positioning compensation during task execution. Through a closed-loop automatic control mechanism of detection-compensation-re-detection-re-compensation, the positioning accuracy of the system can be continuously improved. Even using a robotic arm with a lower precision level can achieve the same precision effect, providing a basis for reducing equipment investment and maintenance costs.

[0057] In one possible implementation, the compensation condition may include: the number of positioning compensations does not exceed a preset maximum number of iterations.

[0058] For example, after completing the system initialization calibration, the number of positioning compensation iterations can be initialized to zero. Then, for each positioning compensation performed based on the robotic arm positioning method provided in this embodiment, the positioning compensation iteration count is incremented by 1. This continues until the number of positioning compensation iterations exceeds the preset maximum number of iterations, at which point positioning compensation ceases. It should be noted that by repeatedly executing this scheme after system initialization, the accumulation of positioning errors can be avoided. In other words, as the number of positioning compensation iterations increases, the positioning accuracy tends to improve, and the positioning error will decrease to a certain extent, approaching the measurement accuracy limit of the visual acquisition device. Based on the above compensation conditions, this embodiment, by performing a limited number of positioning compensation iterations, ensures positioning accuracy, saves system resources, and avoids the system stability degradation caused by infinite loops.

[0059] In another possible implementation, the compensation condition may include: the magnitude of the spatial error vector at the time of the last positioning compensation is not less than a preset positioning accuracy threshold.

[0060] The fact that the magnitude of the spatial error vector during the last positioning compensation was less than a preset positioning accuracy threshold indicates that the current system's positioning accuracy meets the requirements. Based on the above compensation conditions, positioning compensation can be performed when the positioning accuracy does not meet the requirements, and compensation can be discontinued once the requirements are met, thus saving system resources.

[0061] In another possible implementation, the compensation conditions may include: the number of positioning compensations does not exceed a preset maximum number of iterations, and the magnitude of the spatial error vector at the time of the last positioning compensation is not less than a preset positioning accuracy threshold.

[0062] By pre-setting the aforementioned compensation conditions, unnecessary calculations and compensation operations can be avoided to a certain extent, thus saving system resources while ensuring the system's positioning accuracy.

[0063] In one possible implementation, the spatial error can be represented by the magnitude of the spatial error vector to reflect the overall spatial error situation. In this case, the corresponding preset range is the preset range of the magnitude. In another possible implementation, the spatial error can be represented by one or more vector values ​​of the spatial error vector to speed up the calculation. In this case, the corresponding preset range includes the preset range of each vector value used to represent the spatial error. This application does not limit the specific form of the spatial error corresponding to the spatial error vector and the corresponding preset range.

[0064] In one or more embodiments provided in this application, the spatial error vector may include: spatial error value in the X direction, spatial error value in the Y direction, and spatial error value in the Z direction.

[0065] Based on the above, the spatial error corresponding to the spatial error vector within a preset range may include: the absolute value of the spatial error value in the X direction is less than a first preset threshold, the absolute value of the spatial error value in the Y direction is less than a second preset threshold, and the absolute value of the spatial error value in the Z direction is less than a third preset threshold. For example, the first preset threshold may be 30mm, the second preset threshold may be 30mm, and the third preset threshold may be 20mm.

[0066] In one or more embodiments provided in this application, step S104, correcting the theoretical pose according to the spatial error vector, may include:

[0067] Based on the spatial error vector and historical compensation data, determine the compensation vector corresponding to the theoretical pose; correct the theoretical pose based on the compensation vector corresponding to the theoretical pose.

[0068] Historical compensation data refers to the positioning compensation data for the theoretical pose of the visual acquisition point after system initialization and before the current positioning compensation. Specifically, it may include compensation data from a single instance or multiple instances; this application does not limit this. Historical compensation data reflects the compensation status of the current visual acquisition point after system initialization. Determining the current compensation vector by combining historical compensation data can, to some extent, avoid random errors, thereby ensuring the compensation effect.

[0069] In one or more embodiments provided in this application, the historical compensation data includes the historical compensation vector corresponding to the theoretical pose at the time of the last positioning compensation.

[0070] The initial historical compensation vector is a zero vector with the same dimension as the spatial error vector. The initial time is when the positioning compensation is first applied after the system initialization is completed.

[0071] Based on the above, determining the compensation vector corresponding to the theoretical pose according to the spatial error correction vector and historical compensation data may include:

[0072] Based on the pre-configured weights, the spatial error vector and the historical compensation vector are weighted and summed to obtain the compensation vector corresponding to the theoretical pose.

[0073] The sum of the pre-configured weights of the spatial error vector and the historical compensation vector is 1. For example, the compensation vector can be represented as: Compensation_newi = α i × ΔP_current i + (1-α i ) ×Compensation_oldi , where α i The pre-configured weights for the components of the spatial error vector in the i-direction, 0 < α i ≤1, α i As a learning factor that balances the weights of new and old data, it can be updated through learning during system operation, such as updating based on the trend of spatial error changes; ΔP_current i It is the component of the spatial error vector in the i-th direction, Compensation_old i This represents the component of the historical compensation vector in the i-th direction, where i corresponds to the X, Y, Z, A, B, or C directions.

[0074] Based on the above, this embodiment uses a filtering and smoothing method to correct the theoretical pose by combining the current error with the historical error. This can reduce the impact of random errors on positioning compensation. At the same time, this pose correction method conforms to the error characteristics and changing trends, and can achieve a gradual accuracy optimization task based on the dynamic compensation vector.

[0075] The robotic arm positioning device provided in the embodiments of this application is described below. The robotic arm positioning device described below can be referred to in correspondence with the robotic arm positioning method described above.

[0076] The robotic arm positioning device provided in the embodiments of this application, such as Figure 3 As shown, it may include:

[0077] The positioning compensation control unit 11 is used to acquire a calibration plate image and the theoretical pose of the end of the robotic arm in the base coordinates by means of a vision acquisition device when the end of the robotic arm reaches a preset vision acquisition point and meets preset compensation conditions.

[0078] The error calculation and compensation unit 12 is used to calculate the actual pose of the end effector of the robotic arm in the base coordinate system based on the calibration plate image and the predetermined hand-eye conversion matrix, and to calculate the spatial error vector between the actual pose and the theoretical pose; if the spatial error corresponding to the spatial error vector is within a preset range, the theoretical pose is corrected according to the spatial error vector.

[0079] The coordinate update unit 13 is used to determine the reference coordinates of the end effector of the robotic arm in the base coordinate system based on the corrected theoretical pose, and to calculate the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point and the reference coordinates, as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

[0080] In one or more embodiments provided in this application, the device may further include a point management unit for managing the coordinates of points or areas involved in positioning compensation, such as the coordinates of visual acquisition points and operation points. In addition, it may also include the coordinates of initial points, photo points, working points, and safe operation points.

[0081] In one or more embodiments provided in this application, the compensation conditions may include: the number of positioning compensations does not exceed a preset maximum number of iterations, and / or the magnitude of the spatial error vector after the last positioning compensation is not less than a preset positioning accuracy threshold.

[0082] Based on the above, optionally, the positioning compensation control unit 11 can also be used to receive the maximum number of iterations set by the user, count the number of positioning compensations, so as to determine whether the compensation conditions are met.

[0083] Optionally, the positioning compensation control unit 11 can also be used to receive a user-set positioning accuracy threshold, calculate the magnitude of the spatial error vector after positioning compensation, and determine whether the compensation conditions are met. The spatial error vector after positioning compensation is determined based on the actual pose and the corrected theoretical pose during the positioning compensation process.

[0084] In one or more embodiments provided in this application, the device may further include: a vision management unit for implementing management functions related to the vision acquisition device. For example, taking a camera as an example, the vision management unit may be used to record and manage camera extrinsic parameters, camera intrinsic parameters, center distance, etc., to determine the actual pose; it may also be used to implement image position correction enable control to automatically detect and correct image position deviations, providing a basis for subsequent positioning compensation; and it may also be used to implement multi-camera guidance control to eliminate visual blind spots through multi-camera collaboration.

[0085] In one or more embodiments provided in this application, the process by which the error calculation and compensation unit 12 corrects the theoretical pose based on the spatial error vector may include:

[0086] Based on the spatial error vector and historical compensation data, determine the compensation vector corresponding to the theoretical pose;

[0087] The theoretical pose is corrected based on the compensation vector corresponding to the theoretical pose.

[0088] In one or more embodiments provided in this application, the historical compensation data includes the historical compensation vector corresponding to the theoretical pose at the time of the last positioning compensation, wherein the initial historical compensation vector is a zero vector with the same dimension as the spatial error vector.

[0089] Based on the above, the error calculation and compensation unit 12 determines the compensation vector corresponding to the theoretical pose according to the spatial error correction vector and historical compensation data, including:

[0090] Based on the pre-configured weights, the spatial error vector and the historical compensation vector are weighted and summed to obtain the compensation vector corresponding to the theoretical pose; wherein, the sum of the pre-configured weights of the spatial error vector and the historical compensation vector is 1.

[0091] In one or more embodiments provided in this application, the spatial error vector may include: spatial error value in the X direction, spatial error value in the Y direction, and spatial error value in the Z direction.

[0092] Based on the above, the spatial error corresponding to the spatial error vector is within a preset range including: the absolute value of the spatial error value in the X direction is less than a first preset threshold, the absolute value of the spatial error value in the Y direction is less than a second preset threshold, and the absolute value of the spatial error value in the Z direction is less than a third preset threshold.

[0093] Each unit in the robotic arm positioning device can be implemented entirely or partially through software, hardware, or a combination thereof. These units can be embedded in the processor of a computer device in hardware form or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each unit.

[0094] This application also provides a robotic arm controller in its embodiments. (See reference...) Figure 4 As shown, it illustrates a structural schematic diagram suitable for implementing the robotic arm controller in the embodiments of this application. Figure 4 The robotic arm controller shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0095] like Figure 4 As shown, the robotic arm controller may include a processing device (e.g., a central processing unit) 1, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 2 or a program loaded from a storage device 8 into a random access memory (RAM) 3, to implement any of the robotic arm positioning methods provided in this application embodiment. When the robotic arm controller is powered on, the RAM 3 also stores various programs and data required for the operation of the robotic arm controller. The processing device 1, ROM 2, and RAM 3 are interconnected via a bus 4. An input / output (I / O) interface 5 is also connected to the bus 4.

[0096] Typically, the following devices can be connected to I / O interface 5: input devices 6 including, for example, touchscreens, touchpads, keyboards, mice, cameras, etc.; output devices 7 including, for example, liquid crystal displays (LCDs); storage devices 8 including, for example, memory cards, hard drives, etc.; and communication devices 9. Communication device 9 allows the robotic arm controller to communicate wirelessly or wiredly with other devices to exchange data, such as communicating with a vision acquisition device to obtain calibration board images, and communicating with the robotic arm body to control the robotic arm's movements. Although Figure 4 A robotic arm controller with various devices is shown; however, it should be understood that implementation or possession of all the devices shown is not required. More or fewer devices may be implemented alternatively.

[0097] This application embodiment also provides a robotic arm system, including a robotic arm controller, and a robotic arm and a vision acquisition device communicatively connected to the robotic arm controller;

[0098] When the end of the robotic arm reaches a preset visual acquisition point and meets preset compensation conditions, the robotic arm control device sends an image acquisition command to the visual acquisition device and obtains the theoretical pose of the end of the robotic arm in the base coordinates.

[0099] The vision acquisition device acquires images of the calibration board and sends the images of the calibration board to the robotic arm control device;

[0100] The robotic arm control device calculates the actual pose of the robotic arm's end effector in the base coordinate system based on the calibration plate image and a pre-determined hand-eye conversion matrix.

[0101] The robotic arm control device calculates the spatial error vector between the actual pose and the theoretical pose;

[0102] When the spatial error corresponding to the spatial error vector is within a preset range, the robotic arm control device corrects the theoretical pose according to the spatial error vector, and determines the reference coordinates of the end of the robotic arm in the base coordinate system based on the corrected theoretical pose.

[0103] The robotic arm control device calculates the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point, as well as the reference coordinates, and uses this as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

[0104] Optionally, further descriptions of the robotic arm system, particularly of the robotic arm controller, can be found in the above description and will not be repeated here.

[0105] This application also provides a computer program product, including computer-readable instructions, which, when executed on an electronic device, cause the electronic device to implement any of the robotic arm positioning methods provided in this application.

[0106] This application also provides a computer-readable storage medium that carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement any of the robotic arm positioning methods provided in this application.

[0107] Finally, it should be noted that in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0108] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. The various embodiments can be combined as needed, and the same or similar parts can be referred to each other.

[0109] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A robotic arm positioning method, characterized in that, include: When the end of the robotic arm reaches the preset visual acquisition point and meets the preset compensation conditions, the calibration plate image is acquired through the visual acquisition device and the theoretical pose of the end of the robotic arm in the base coordinates is obtained. Based on the calibration plate image and the pre-determined hand-eye transformation matrix, the actual pose of the robotic arm's end effector in the base coordinate system is calculated; Calculate the spatial error vector between the actual pose and the theoretical pose; If the spatial error corresponding to the spatial error vector is within a preset range, the theoretical pose is corrected according to the spatial error vector, and the reference coordinates of the end of the robotic arm in the base coordinate system are determined based on the corrected theoretical pose. Based on the relative positional relationship between the visual acquisition points and each operation point, and the reference coordinates, the coordinate values ​​of each operation point are calculated, which serve as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

2. The robotic arm positioning method according to claim 1, characterized in that, The compensation conditions include: the number of positioning compensations does not exceed the preset maximum number of iterations, and / or the magnitude of the spatial error vector at the time of the last positioning compensation is not less than the preset positioning accuracy threshold.

3. The robotic arm positioning method according to claim 2, characterized in that, Correcting the theoretical pose based on the spatial error vector includes: Based on the spatial error vector and historical compensation data, determine the compensation vector corresponding to the theoretical pose; The theoretical pose is corrected based on the compensation vector corresponding to the theoretical pose.

4. The robotic arm positioning method according to claim 3, characterized in that, The historical compensation data includes the historical compensation vector corresponding to the theoretical pose at the time of the last positioning compensation, wherein the initial historical compensation vector is a zero vector with the same dimension as the spatial error vector. Based on the spatial error correction vector and historical compensation data, the compensation vector corresponding to the theoretical pose is determined, including: Based on the pre-configured weights, the spatial error vector and the historical compensation vector are weighted and summed to obtain the compensation vector corresponding to the theoretical pose; wherein, the sum of the pre-configured weights of the spatial error vector and the historical compensation vector is 1.

5. The robotic arm positioning method according to any one of claims 1-3, characterized in that, The spatial error vector includes: spatial error value in the X direction, spatial error value in the Y direction, and spatial error value in the Z direction; The spatial error corresponding to the spatial error vector is within a preset range including: the absolute value of the spatial error value in the X direction is less than a first preset threshold, the absolute value of the spatial error value in the Y direction is less than a second preset threshold, and the absolute value of the spatial error value in the Z direction is less than a third preset threshold.

6. A robotic arm positioning device, characterized in that, include: The positioning compensation control unit is used to acquire a calibration plate image and the theoretical pose of the end of the robotic arm in the base coordinates by means of a vision acquisition device when the end of the robotic arm reaches a preset vision acquisition point and meets preset compensation conditions. The error calculation and compensation unit is used to calculate the actual pose of the end effector of the robotic arm in the base coordinate system based on the calibration plate image and the pre-determined hand-eye conversion matrix, and to calculate the spatial error vector between the actual pose and the theoretical pose. If the spatial error corresponding to the spatial error vector is within a preset range, the theoretical pose is corrected according to the spatial error vector. The coordinate update unit is used to determine the reference coordinates of the end effector of the robotic arm in the base coordinate system based on the corrected theoretical pose, and to calculate the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point and the reference coordinates, as the basis for controlling the end effector of the robotic arm to be positioned to each operation point.

7. A robotic arm controller, characterized in that, It includes at least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor is used to execute the computer program so that the robotic arm controller can implement the robotic arm positioning method as described in any one of claims 1 to 5.

8. A robotic arm system, characterized in that, It includes a robotic arm controller, and a robotic arm and a vision acquisition device that are communicatively connected to the robotic arm controller; When the end of the robotic arm reaches a preset visual acquisition point and meets preset compensation conditions, the robotic arm control device sends an image acquisition command to the visual acquisition device and obtains the theoretical pose of the end of the robotic arm in the base coordinates. The vision acquisition device acquires images of the calibration board and sends the images of the calibration board to the robotic arm control device; The robotic arm control device calculates the actual pose of the robotic arm's end effector in the base coordinate system based on the calibration plate image and a pre-determined hand-eye conversion matrix. The robotic arm control device calculates the spatial error vector between the actual pose and the theoretical pose; When the spatial error corresponding to the spatial error vector is within a preset range, the robotic arm control device corrects the theoretical pose according to the spatial error vector, and determines the reference coordinates of the end of the robotic arm in the base coordinate system based on the corrected theoretical pose. The robotic arm control device calculates the coordinate values ​​of each operation point based on the relative positional relationship between the visual acquisition point and each operation point, as well as the reference coordinates, and uses this as the basis for controlling the end effector of the robotic arm to be positioned at each operation point.

9. A computer program product, characterized in that, Includes computer-readable instructions that, when executed on an electronic device, cause the electronic device to implement the robotic arm positioning method as described in any one of claims 1 to 5.

10. A computer storage medium, characterized in that, The storage medium carries one or more computer programs that, when executed by an electronic device, enable the electronic device to implement the robotic arm positioning method as described in any one of claims 1 to 5.