Robot deployment processing method, system, electronic device, and storage medium
By teaching all work points on the first workbench and constructing a coordinate system matrix, the problem of high teaching costs for robots on multiple workbenches was solved, achieving efficient robot deployment and accurate work point positioning.
Patent Information
- Application Number
- CN202411695541.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2044-11-22
AI Technical Summary
In existing technologies, when a robot is taught on multiple workbenches, it needs to be taught at all work points on each workbench, resulting in high teaching costs and long teaching times.
By performing teaching operations on all work points of the first workbench, the first pose of the robot at each work point is determined. Teaching operations are then performed on some work points of the second workbench. The pose of the robot in the coordinate system of the first workbench is used to construct the coordinate system matrix of the second workbench, and the robot is directly controlled to perform operations on the second workbench.
It reduces the workload of robot teaching, improves deployment accuracy, avoids teaching operations on each workbench, eliminates the randomness of manual labeling, and ensures the accuracy of labeling work points.
Smart Images

Figure CN119458284B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics technology, and more specifically, to a robot deployment processing method, system, electronic device, and storage medium. Background Technology
[0002] In a factory workshop, a robot needs to operate multiple workstations and needs to be taught at multiple work points on each workstation.
[0003] In existing technologies, before teaching a robot, a visual label needs to be affixed to each workbench. Then, a user coordinate system is established using the visual label as a positioning reference. The robot is then taught at the work point of each workbench. If there are many workbenches, this teaching method requires a lot of time, resulting in high robot teaching costs. Summary of the Invention
[0004] The purpose of this application is to address the shortcomings of the prior art by providing a robot deployment processing method, system, electronic device, and storage medium to improve the accuracy of robot deployment processing.
[0005] To achieve the above objectives, the technical solutions adopted in the embodiments of this application are as follows:
[0006] In a first aspect, embodiments of this application provide a robot deployment processing method, the method comprising:
[0007] The robot is controlled to perform teaching operations at all first work points on the first workbench, and the first pose of the robot at each first work point is determined, wherein the first pose is the pose in the coordinate system of the first workbench.
[0008] The robot is controlled to perform teaching operations at multiple teaching work points on the second workbench, and the second pose of the robot at each teaching work point is obtained. The second pose is the pose of the robot in the coordinate system. The multiple teaching work points are some of the work points of the second workbench, and the work point deployment structure of the second workbench is the same as that of the work point deployment structure of the first workbench.
[0009] Based on the second pose corresponding to each teaching task point, construct the coordinate system matrix of the second workbench;
[0010] Based on the first pose corresponding to each first work point and the coordinate system matrix of the second worktable, the target pose of the second work point corresponding to each first work point in the second worktable is determined, and the robot is controlled to perform work at the second work point using the target pose.
[0011] Optionally, determining the first pose of the robot at each first work point includes:
[0012] Obtain the first robot teaching pose corresponding to all first work points, where the first robot teaching pose is the pose in the robot's coordinate system;
[0013] Select a preset number of reference work points from all the first work points, and obtain the first robot teaching position in the first robot teaching pose of each reference work point;
[0014] Construct the coordinate system matrix of the first workbench based on each of the first robot's teaching positions;
[0015] Each first pose is determined based on the teaching pose of each first robot and the coordinate system matrix of the first worktable.
[0016] Optionally, constructing the coordinate system matrix of the first workbench based on each of the first robot teaching positions includes:
[0017] Based on the first and second teaching positions of the first robot, determine the x-vector in the coordinate system matrix of the first worktable;
[0018] Based on the first and third teaching positions of the first robot, determine the y-vector in the coordinate system matrix of the first workbench;
[0019] Based on the x vector and y vector in the coordinate system matrix of the first workbench, determine the z vector in the coordinate system matrix of the first workbench.
[0020] The translation vector in the coordinate system matrix of the first workbench is determined based on the first robot teaching position;
[0021] The coordinate system matrix of the first worktable is constructed based on the x-vector, y-vector, z-vector, and translation vector in the coordinate system matrix of the first worktable.
[0022] Optionally, determining the x-vector in the coordinate system of the first worktable based on the first robot teaching position and the second robot teaching position includes:
[0023] Subtracting the coordinates of the first teaching position from the coordinates of the second teaching position of the first robot yields the coordinate vector difference.
[0024] Calculate the magnitude of the difference between the coordinate vectors;
[0025] Dividing the coordinate vector difference by its magnitude yields the x-vector in the coordinate system matrix of the first workbench.
[0026] Optionally, determining the z vector in the coordinate system matrix of the first worktable based on the x vector and the y vector in the coordinate system matrix of the first worktable includes:
[0027] The x-vector in the coordinate system matrix of the first workbench is cross-multiplied with the y-vector in the coordinate system matrix of the first workbench to obtain the z-vector in the coordinate system matrix of the first workbench.
[0028] Optionally, determining each first pose based on the teaching pose of each first robot and the coordinate system matrix of the first worktable includes:
[0029] Construct the inverse matrix of the coordinate system matrix of the first workbench;
[0030] Each of the first robot teaching poses is multiplied by the inverse matrix to obtain each of the first poses.
[0031] Optionally, constructing the coordinate system matrix of the second workbench based on the second pose corresponding to each of the teaching task points includes:
[0032] Obtain the second robot teaching position in the second pose corresponding to each of the teaching operation points;
[0033] Based on the first and second teaching positions of the second robot, determine the x-vector in the coordinate system matrix of the second worktable;
[0034] Based on the first and third teaching positions of the second robot, determine the y-vector in the coordinate system matrix of the second worktable;
[0035] Based on the x-vector and y-vector in the coordinate system matrix of the second worktable, determine the z-vector in the coordinate system matrix of the second worktable.
[0036] The translation vector in the coordinate system matrix of the second workbench is determined based on the first teaching position of the second robot;
[0037] The coordinate system matrix of the second worktable is constructed based on the x-vector, y-vector, z-vector, and translation vector in the coordinate system matrix of the second worktable.
[0038] Optionally, determining the target pose of the second work point corresponding to each of the first work points in the second worktable based on the first pose corresponding to each of the first work points and the coordinate system matrix of the second worktable includes:
[0039] Multiply the first pose corresponding to each first work point with the coordinate system matrix of the second worktable to obtain the target pose of the second work point corresponding to each first work point in the second worktable.
[0040] Secondly, embodiments of this application also provide a robot deployment and processing system, including: a control device, a robot, and multiple workbenches, each workbench having the same number of work points deployed thereon, and the work point deployment structure of each workbench being the same.
[0041] The control device is used to implement robot deployment processing through the steps of the method described in the first aspect.
[0042] Thirdly, embodiments of this application also provide an electronic device, including: a processor, a storage medium, and a bus, wherein the storage medium stores program instructions executable by the processor, and when the application runs, the processor communicates with the storage medium via the bus, and the processor executes the program instructions to perform the steps of the robot deployment processing method described in the first aspect above.
[0043] Fourthly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which is read and executes the steps of the robot deployment processing method described in the first aspect.
[0044] The beneficial effects of this application are:
[0045] This application provides a robot deployment processing method, system, electronic device, and storage medium. By performing teaching operations on all first work points on a first workbench and determining the first pose of the robot at each first work point in the coordinate system of the first workbench, the robot is then controlled to perform teaching operations only on some work points on a second workbench. The coordinate system matrix of the second workbench is constructed based on the second pose of the robot at some work points on the second workbench in the robot's coordinate system. Thus, based on the first pose in the coordinate system of the first workbench and the constructed coordinate system matrix of the second workbench, the target pose of each second work point on the second workbench is obtained. Subsequently, the robot can be directly controlled to perform operations on the second workbench based on the obtained target poses. All work points only need to be taught on the first workbench, and other workbenches only need to be taught on a portion of the work points. The target pose of the work points on other workbenches is obtained by converting the first pose taught on the first workbench without the need for pose adjustment. This avoids the need for teaching and deployment on all work points on each workbench as in the prior art. At the same time, the point with the visual label is also treated as a work point, and the application of the visual label is done by the robot, eliminating the randomness of manual labeling and ensuring the accuracy of the label work points, which greatly reduces the workload of subsequent large-scale teaching. Attached Figure Description
[0046] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0047] Figure 1 This application provides a schematic diagram of the architecture of a robot deployment and processing system.
[0048] Figure 2 A flowchart illustrating a robot deployment method provided in an embodiment of this application;
[0049] Figure 3 A flowchart illustrating a method for determining a first pose provided in an embodiment of this application;
[0050] Figure 4 A flowchart illustrating a method for constructing the coordinate system matrix of a first workbench, provided in an embodiment of this application;
[0051] Figure 5 A flowchart illustrating another method for constructing the coordinate system matrix of the first worktable provided in an embodiment of this application;
[0052] Figure 6 A flowchart illustrating another method for determining the first pose provided in an embodiment of this application;
[0053] Figure 7 A flowchart illustrating a method for constructing the coordinate system matrix of a second workbench, provided in an embodiment of this application;
[0054] Figure 8 This is a structural block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation
[0055] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the accompanying drawings in this application are for illustrative and descriptive purposes only and are not intended to limit the scope of protection of this application. Furthermore, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of this application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical contextual relationships may be reversed or implemented simultaneously. In addition, those skilled in the art, guided by the content of this application, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts.
[0056] Furthermore, the described embodiments are merely some, not all, of the embodiments of this application. The components of the embodiments of this application described and illustrated herein can typically be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.
[0057] It should be noted that the term "comprising" will be used in the embodiments of this application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.
[0058] Figure 1 This is a schematic diagram of the architecture of a robot deployment and processing system provided in an embodiment of this application, such as... Figure 1As shown, this method is applied to a robot deployment scenario involving a control device, a robot, and multiple workstations. Each workstation has the same number of work points, and the deployment structure of the work points is identical across all workstations. For example, workstation A has three work points: the first work point is located at the center of workstation A, the second work point is located 1 meter to the left of the first work point, and the third work point is located 1 meter to the right of the first work point. Similarly, any other workstation B also has three work points: the first work point is located at the center of workstation B, the second work point is located 1 meter to the left of the first work point, and the third work point is located 1 meter to the right of the first work point. The control device can communicate with the robot and utilize the robot deployment processing method provided in this application to perform robot deployment processing during the teaching process. This significantly reduces the deployment time of the robot during the teaching process, thereby simplifying the teaching workload and time.
[0059] The control device can be a terminal device with computing and display capabilities, such as a mobile phone, tablet, laptop, PDA, or desktop computer, or it can be a server. Specifically, it can be applied to applications within the terminal device, such as mobile phone apps (APPs) or computer application systems.
[0060] Figure 2 This is a flowchart illustrating a robot deployment method provided in an embodiment of this application. The execution entity of this method is the aforementioned control device. Figure 2 As shown, the method includes:
[0061] S101. Control the robot to perform teaching operations at all first work points on the first worktable, and determine the robot's first pose at each first work point.
[0062] Here, the first pose refers to the pose in the coordinate system of the first worktable.
[0063] Optionally, there are multiple workbenches in the production workshop, and the first workbench can refer to the first workbench among the multiple workbenches where teaching is performed. Multiple first work points are deployed on the first workbench, and the robot needs to be controlled to perform teaching operations at each first work point, that is, the robot needs to be taught to a position that meets the work requirements at each first work point.
[0064] For example, if the first workbench is equipped with 10 first work points, the identifiers of the 10 first work points can be, for example, s1n1 to s1n10. The work points for which visual labels are applied are labeled by the robot, and the work points with visual labels are identified by s1n11. Then the first workbench contains 11 first work points s1n1 to s1n11.
[0065] Optionally, the control device can first control the robot to move to the first working point s1n1 on the first worktable. It can then adjust the robot's pose according to the work requirements, ensuring the pose at the first working point s1n1 meets the requirements. The pose at the first working point s1n1 that meets the work requirements, within the robot coordinate system, is recorded, and the first pose U1T1 at the first working point s1n1 is determined. Assuming the pose at the first working point s1n1 that meets the work requirements is pose 1 in the robot coordinate system, the first pose U1T1 at the first working point s1n1 can be determined based on pose 1.
[0066] It is worth noting that the teaching process for other first work points on the first workbench is the same as that for the first work point s1n1. That is, for this first workbench, the robot's pose needs to be adjusted according to the work requirements at each first work point, and then the pose in the robot coordinate system that meets the work requirements is recorded. The first pose U1T2 to U1T11 of the robot at other first work points is determined using a preset method.
[0067] S102. Control the robot to perform teaching operations at multiple teaching work points on the second workbench, and obtain the robot's second pose at each teaching work point.
[0068] Here, the second pose is the robot's pose in the robot's coordinate system. The multiple teach pendant work points are a subset of all work points on the second worktable, and the deployment structure of the work points on the second worktable is the same as that on the first worktable; that is, the number of teach pendant work points on the second worktable is the same as the number of work points on the first worktable, and the position of each teach pendant work point on the second worktable is the same as the position of each first work point on the first worktable. The second worktable can be any worktable other than the first worktable.
[0069] For example, the multiple teaching work points can be three teaching work points, such as s2n1, s2n2, and s2n3. If there are 11 work points on the first workbench, there are also 11 work points on the second workbench, such as s2n1 to s2n11.
[0070] Optionally, the process of the robot performing teaching operations at multiple teaching points on the second workbench is similar to the process of performing teaching operations at the first work point s1n1 in S101 described above. Specifically, firstly, the robot is moved to one of the multiple teaching points s2n1 on the second workbench, and the robot's pose is adjusted according to the task requirements. Then, the pose adjusted according to the task requirements is used as the robot's second pose W2p1 in the robot's coordinate system at teaching point s2n1. The robot is then moved to teaching point s2n2 on the second workbench, and the robot's pose is adjusted according to the task requirements. Then, the pose adjusted according to the task requirements is used as the robot's second pose W2p2 in the robot's coordinate system at teaching point s2n2. Further, the robot is moved to teaching point s2n3 on the second workbench, and the robot's pose is adjusted according to the task requirements. Then, the pose adjusted according to the task requirements is used as the robot's second pose W2p3 in the robot's coordinate system at teaching point s2n3.
[0071] Optionally, for the second workbench, it is only necessary to adjust the robot's pose at the aforementioned multiple teaching operation points. That is, when performing teaching operations on the robot at the aforementioned multiple teaching operation points, it is not necessary to adjust the robot's pose at all operation points of the second workbench.
[0072] S103. Construct the coordinate system matrix of the second worktable based on the second pose corresponding to each teaching operation point.
[0073] Specifically, the coordinate system matrix of the second worktable can be constructed using a preset method based on the second pose of the robot in the robot's coordinate system at each teaching operation point.
[0074] For example, the coordinate system matrix T of the second worktable can be constructed using a preset method based on the robot's second poses W2p1, W2p2, and W2p3 obtained at the three teaching work points s2n1, s2n2, and s2n3. user2 .
[0075] S104. Based on the first pose corresponding to each first work point and the coordinate system matrix of the second worktable, determine the target pose of the second work point corresponding to each first work point in the second worktable, so as to control the robot to perform work at each second work point according to each target pose.
[0076] The target pose of each second work point refers to the pose in the coordinate system of the second worktable.
[0077] Optionally, since the deployment structure of the work points on the second workbench is the same as that on the first workbench, each second work point on the second workbench corresponds one-to-one with each first work point on the first workbench.
[0078] For example, the first work point s1n1 corresponds to the second work point s2n1, the first work point s1n2 corresponds to the second work point s2n2, the first work point s1n3 corresponds to the second work point s2n3, the first work point s1n4 corresponds to the second work point s2n4, the first work point s1n4 corresponds to the second work point s2n4, the first work point s1n5 corresponds to the second work point s2n5, the first work point s1n6 corresponds to the second work point s2n6, and so on.
[0079] For example, the coordinate system matrix T of the second worktable can be used as a reference, based on the first pose U1T1 corresponding to the first work point s1n1. user2 The target pose U2T1 of the second work point s2n1 corresponding to the first work point s1n1 in the second worktable is determined using a preset method. This can be based on the first pose U1T2 corresponding to the first work point s1n2 and the coordinate system matrix T of the second worktable. user2 The target pose U2T2 of the second work point s2n2 corresponding to the first work point s1n2 in the second workbench is determined using a preset method. And so on.
[0080] Optionally, after obtaining the target pose of each second work point, the control device can directly control the robot to perform operations at each second work point on the second workbench based on the obtained target pose.
[0081] In this embodiment, by performing teaching operations on all first work points on the first workbench and determining the first pose of the robot at each first work point in the coordinate system of the first workbench, the robot is then controlled to perform teaching operations only on some work points on the second workbench. The coordinate system matrix of the second workbench is constructed based on the second pose of the robot at some work points on the second workbench in the robot's coordinate system. Thus, based on each first pose in the coordinate system of the first workbench and the constructed coordinate system matrix of the second workbench, the target pose of each second work point on the second workbench is obtained. Subsequently, the robot can be directly controlled to perform operations on each second workbench based on the obtained target poses. All work points only need to be taught on the first workbench, and other workbenches only need to be taught on a portion of the work points. The target pose of the work points on other workbenches is obtained by converting the first pose taught on the first workbench without the need for pose adjustment. This avoids the need for teaching and deployment on all work points on each workbench as in the prior art. At the same time, the point with the visual label is also treated as a work point, and the application of the visual label is done by the robot, eliminating the randomness of manual labeling and ensuring the accuracy of the label work points, which greatly reduces the workload of subsequent large-scale teaching.
[0082] Figure 3A flowchart illustrating a method for determining a first pose provided in an embodiment of this application is shown below. Figure 3 As shown, determining the robot's first pose at each first work point in S101 above may include:
[0083] S201. Obtain the first robot teaching pose corresponding to the first work point.
[0084] The first robot teaching pose refers to the pose in the robot coordinate system.
[0085] Optionally, after the robot's pose at the first work point on the first worktable is adjusted according to the work requirements, the adjusted pose of the robot in the robot coordinate system can be used as the first robot teaching pose corresponding to the first work point.
[0086] For example, the following robot teaching poses can be obtained: the first robot teaching pose W1T1 corresponding to the first task point s1n1, the first robot teaching pose W1T2 corresponding to the first task point s1n2, the first robot teaching pose W1T3 corresponding to the first task point s1n3, the first robot teaching pose W1T4 corresponding to the first task point s1n4, the first robot teaching pose W1T5 corresponding to the first task point s1n5, the first robot teaching pose W1T6 corresponding to the first task point s1n6, the first robot teaching pose W1T7 corresponding to the first task point s1n7, the first robot teaching pose W1T8 corresponding to the first task point s1n8, the first robot teaching pose W1T9 corresponding to the first task point s1n9, the first robot teaching pose W1T10 corresponding to the first task point s1n10, and the first robot teaching pose W1T11 corresponding to the first task point s1n11.
[0087] S202. Select a preset number of reference work points from all the first work points, and obtain the first robot teaching position in the first robot teaching pose of each reference work point.
[0088] Optionally, the preset number can be, for example, the first three first work points, with reference work points being s1n1, s1n2, and s1n3 respectively. Then, the first robot teaching position W1p1 is obtained from W1T1, the first robot teaching position W1p2 is obtained from W1T2, and the first robot teaching position W1p3 is obtained from W1T3.
[0089] S203. Construct the coordinate system matrix of the first workbench based on the teaching positions of each first robot.
[0090] Specifically, the coordinate system matrix T of the first worktable can be constructed using a preset method based on the first robot teaching positions of a preset number of reference work points, i.e., the first robot teaching positions of the first three first work points. user1.
[0091] Optionally, the first three first working points can be used as the transformation points between the coordinate system of the computational robot and the coordinate system of the first worktable. Since the first three first working points are fixed to the first worktable, the coordinate system matrix of the first worktable can be constructed using a preset method based on the teaching positions of the first robot at these three first working points fixed to the first worktable.
[0092] S204. Determine the first pose of each robot based on the teaching pose of each robot and the coordinate system matrix of the first worktable.
[0093] Optionally, each first pose can be obtained using a preset method based on the teaching pose of each first robot and the coordinate system matrix of the first worktable.
[0094] Figure 4 A flowchart illustrating a method for constructing the coordinate system matrix of a first workbench, as provided in an embodiment of this application, is shown below. Figure 4 As shown, the coordinate system matrix of the first worktable constructed according to the teaching positions of each first robot in S203 above may include:
[0095] S301. Based on the first teaching position of the first robot and the second teaching position of the first robot, determine the x vector in the coordinate system matrix of the first worktable.
[0096] Specifically, the x-vector in the coordinate system matrix of the first worktable can be determined using a preset method based on the first robot teaching position W1p1 and the second robot teaching position W1p2.
[0097] S302. Based on the first and third teaching positions of the first robot, determine the y vector in the coordinate system matrix of the first worktable.
[0098] Specifically, the y-vector in the coordinate system matrix of the first worktable can be determined using a preset method based on the first robot teaching position W1p1 and the third first robot teaching position W1p3.
[0099] S303. Determine the z vector in the coordinate system matrix of the first worktable based on the x vector and the y vector in the coordinate system matrix of the first worktable.
[0100] Optionally, the z vector in the coordinate system matrix of the first worktable can be determined using a preset method based on the x vector and the y vector in the coordinate system matrix of the first worktable.
[0101] S304. Determine the translation vector in the coordinate system matrix of the first worktable based on the first robot teaching position.
[0102] Specifically, the coordinates in the first robot teaching position can be directly used as the translation vector in the coordinate system matrix of the first worktable.
[0103] S305. Construct the coordinate system matrix of the first worktable based on the x vector, y vector, z vector, and translation vector in the coordinate system matrix of the first worktable.
[0104] Specifically, the coordinate system matrix of the first worktable Where x1 is the x vector in the coordinate system matrix of the first worktable, y1 is the y vector in the coordinate system matrix of the first worktable, z1 is the z vector in the coordinate system matrix of the first worktable, and W1p1 is the translation vector in the coordinate system matrix of the first worktable.
[0105] Figure 5 A flowchart illustrating another method for constructing the coordinate system matrix of the first workbench provided in this application embodiment is shown below. Figure 5 As shown, in step S301 above, determining the x-vector in the coordinate system matrix of the first worktable based on the first robot teaching position and the second robot teaching position can include:
[0106] S401. Subtract the coordinates of the first teaching position from the coordinates of the second teaching position of the first robot to obtain the coordinate vector difference.
[0107] Specifically, the difference in coordinate vectors is W1p2 - W1p1.
[0108] S402, Calculate the magnitude of the difference between coordinate vectors.
[0109] Specifically, the magnitude of the difference between the coordinate vectors is ||W1p2-W1p1||.
[0110] S403. Divide the difference between the coordinate vectors by the magnitude of the difference between the coordinate vectors to obtain the x vector in the coordinate system matrix of the first worktable.
[0111] Specifically, the x-vector in the coordinate system matrix of the first worktable is:
[0112] Optionally, the calculation method for the y-vector in the coordinate system matrix of the first worktable is similar to that for the x-vector in the coordinate system matrix of the first worktable, then the y-vector in the coordinate system matrix of the first worktable is:
[0113] Optionally, S303 above, determining the z vector in the coordinate system matrix of the first worktable based on the x vector and the y vector in the coordinate system matrix of the first worktable, may include:
[0114] Specifically, the x vector in the coordinate system matrix of the first workbench can be cross-producted with the y vector in the coordinate system matrix of the first workbench to obtain the z vector in the coordinate system matrix of the first workbench. Then the z vector in the coordinate system matrix of the first workbench is cross_product(x1, y1), where x1 is the x vector in the coordinate system matrix of the first workbench and y1 is the y vector in the coordinate system matrix of the first workbench.
[0115] Figure 6 A flowchart illustrating another method for determining a first pose provided in an embodiment of this application is shown below. Figure 6 As shown, in step S204 above, determining each first pose based on the teaching pose of each first robot and the coordinate system matrix of the first worktable may include:
[0116] S501, Construct the inverse matrix of the coordinate system matrix of the first workbench.
[0117] Specifically, the inverse matrix of the coordinate system matrix of the first worktable is [t user1 ] T .
[0118] S502. Multiply each first robot's teaching pose by the inverse matrix to obtain each first pose.
[0119] For example, the first pose of each is: U1T1 = W1T1 * [T user1 ] T U1T2 = W1T2 * [T user1 ] T U1T3 = W1T3 * [T user1 ] T U1T4 = W1T4 * [T user1 ] T U1T5 = W1T5 * [T user1 ] T U1T6 = W1T6 * [T user1 ] T U1T7 = W1T7 * [T user1 ] T U1T8 = W1T8 * [T user1 ] T U1T9 = W1T9 * [T user1 ] T U1T10 = W1T10 * [T user1 ] TU1T11 = W1T11 * [T user1 ] T .
[0120] Figure 7 A flowchart illustrating a method for constructing the coordinate system matrix of a second workbench, as provided in an embodiment of this application, is shown below. Figure 7 As shown, in S103 above, constructing the coordinate system matrix of the second worktable based on the second pose corresponding to each teaching operation point can include:
[0121] S601. Obtain the second robot teaching position in the second pose corresponding to each teaching operation point.
[0122] Specifically, each teaching work point is the first three second work points on the second workbench, so the obtained second robot teaching positions are W2p1, W2p2, and W2p3.
[0123] S602. Based on the first and second teaching positions of the second robot, determine the x vector in the coordinate system matrix of the first worktable.
[0124] Specifically, the x-vector in the coordinate system matrix of the second worktable is:
[0125] S603. Based on the first and third teaching positions of the second robot, determine the y-vector in the coordinate system matrix of the second worktable.
[0126] Specifically, the y-vector in the coordinate system matrix of the second workbench is
[0127] S604. Based on the x-vector and y-vector in the coordinate system matrix of the second worktable, determine the z-vector in the coordinate system matrix of the second worktable.
[0128] Optionally, the x vector in the coordinate system matrix of the second workbench can be cross-producted with the y vector in the coordinate system matrix of the second workbench to obtain the z vector in the coordinate system matrix of the second workbench. Then, the z vector in the coordinate system matrix of the second workbench is cross_product(x2, y2), where x2 is the x vector in the coordinate system matrix of the second workbench and y2 is the y vector in the coordinate system matrix of the second workbench.
[0129] S605. Determine the translation vector in the coordinate system matrix of the second worktable based on the teaching position of the second robot.
[0130] Specifically, the coordinates in the second robot teaching position can be directly used as the translation vector in the coordinate system matrix of the second worktable.
[0131] S606. Construct the coordinate system matrix of the second worktable based on the x vector, y vector, z vector, and translation vector in the coordinate system matrix of the second worktable.
[0132] Specifically, the coordinate system matrix of the second worktable Where x2 is the x vector in the coordinate system matrix of the second worktable, y2 is the y vector in the coordinate system matrix of the second worktable, z2 is the z vector in the coordinate system matrix of the second worktable, and W2p1 is the translation vector in the coordinate system matrix of the second worktable.
[0133] Optionally, determining the target pose of the second work point corresponding to each first work point in the second worktable in step S104, based on the first pose corresponding to each first work point and the coordinate system matrix of the second worktable, may include:
[0134] Optionally, the first pose corresponding to each first work point can be multiplied with the coordinate system matrix of the second worktable to obtain the target pose of the second work point corresponding to each first work point in the second worktable.
[0135] For example, the first pose U1T1 corresponding to the first work point s1n1 is compared with the coordinate system matrix T of the second worktable. user2 Multiplying these yields the target pose of the second work point s2n1 corresponding to the first work point on the second workbench, i.e., the target pose of the second work point s2n1 is T. user2 *U1T1. The calculation process for the target pose of other second work points is the same as that for the target pose of the second work point s2n1, thus obtaining the target pose of each second work point.
[0136] For example, the target pose of each second work point is T. user2 *U1T2T user2 *U1T3、T user2 *U1T1、T user2 *U1T4、T user2 *U1T5、T user2 *U1T6、T user2 *U1T7、T user2 *U1T8、T user2 *U1T9、T user2 *U1T10、T user2 *U1T11.
[0137] Figure 8 This is a structural block diagram of an electronic device 700 provided in an embodiment of this application. This electronic device can, for example, be used for robot deployment processing as described in the foregoing embodiments. Figure 8 As shown, the electronic device may include: a processor 701 and a memory 702.
[0138] Optionally, a bus 703 may also be included, wherein the memory 702 is used to store machine-readable instructions executable by the processor 701. When the electronic device 700 is running, the processor 701 and the memory 702 communicate via the bus 703. When the machine-readable instructions are executed by the processor 701, the method steps in the above method embodiments are performed.
[0139] This application also provides a computer-readable storage medium storing a computer program, which, when run by a processor, executes the method steps described in the robot deployment processing method embodiments.
[0140] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems and devices described above can be referred to the corresponding processes in the method embodiments, and will not be repeated here. In the several embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection can be through some communication interfaces; the indirect coupling or communication connection of devices or modules can be electrical, mechanical, or other forms.
[0141] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. If the functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, optical disks, and other media capable of storing program code.
[0142] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.
Claims
1. A robot deployment processing method, characterized in that, The method includes: The robot is controlled to perform teaching operations at all first work points on the first workbench, and the first pose of the robot at each first work point is determined, wherein the first pose is the pose in the coordinate system of the first workbench. The robot is controlled to perform teaching operations at multiple teaching work points on the second workbench, and the second pose of the robot at each teaching work point is obtained. The second pose is the pose of the robot in the coordinate system. The multiple teaching work points are some of the work points of the second workbench, and the work point deployment structure of the second workbench is the same as that of the work point deployment structure of the first workbench. Based on the second pose corresponding to each teaching task point, construct the coordinate system matrix of the second workbench; Based on the first pose corresponding to each first work point and the coordinate system matrix of the second worktable, the target pose of the second work point corresponding to each first work point in the second worktable is determined, so as to control the robot to perform work at the second work point according to the target pose.
2. The robot deployment processing method according to claim 1, characterized in that, Determining the first pose of the robot at each first work point includes: Obtain the first robot teaching pose corresponding to all first work points, where the first robot teaching pose is the pose in the robot's coordinate system; Select a preset number of reference work points from all the first work points, and obtain the first robot teaching position in the first robot teaching pose of each reference work point; Construct the coordinate system matrix of the first workbench based on each of the first robot's teaching positions; Each first pose is determined based on the teaching pose of each first robot and the coordinate system matrix of the first worktable.
3. The robot deployment processing method according to claim 2, characterized in that, The step of constructing the coordinate system matrix of the first workbench based on each of the first robot's teaching positions includes: Based on the first and second teaching positions of the first robot, determine the x-vector in the coordinate system matrix of the first worktable; Based on the first and third teaching positions of the first robot, determine the y-vector in the coordinate system matrix of the first workbench; Based on the x vector and y vector in the coordinate system matrix of the first workbench, determine the z vector in the coordinate system matrix of the first workbench. The translation vector in the coordinate system matrix of the first workbench is determined based on the first robot teaching position; The coordinate system matrix of the first worktable is constructed based on the x-vector, y-vector, z-vector, and translation vector in the coordinate system matrix of the first worktable.
4. The robot deployment processing method according to claim 3, characterized in that, Determining the x-vector in the coordinate system of the first workbench based on the first robot teaching position and the second robot teaching position includes: Subtracting the coordinates of the first teaching position from the coordinates of the second teaching position of the first robot yields the coordinate vector difference. Calculate the magnitude of the difference between the coordinate vectors; Dividing the coordinate vector difference by its magnitude yields the x-vector in the coordinate system matrix of the first workbench.
5. The robot deployment processing method according to claim 3, characterized in that, Determining the z vector in the coordinate system matrix of the first workbench based on the x vector and the y vector in the coordinate system matrix of the first workbench includes: The x-vector in the coordinate system matrix of the first workbench is cross-multiplied with the y-vector in the coordinate system matrix of the first workbench to obtain the z-vector in the coordinate system matrix of the first workbench.
6. The robot deployment processing method according to claim 2, characterized in that, Determining each first pose based on the teaching pose of each first robot and the coordinate system matrix of the first worktable includes: Construct the inverse matrix of the coordinate system matrix of the first workbench; Each of the first robot teaching poses is multiplied by the inverse matrix to obtain each of the first poses.
7. The robot deployment processing method according to claim 1, characterized in that, The step of constructing the coordinate system matrix of the second workbench based on the second pose corresponding to each of the teaching task points includes: Obtain the second robot teaching position in the second pose corresponding to each of the teaching operation points; Based on the first and second teaching positions of the second robot, determine the x-vector in the coordinate system matrix of the second worktable; Based on the first and third teaching positions of the second robot, determine the y-vector in the coordinate system matrix of the second worktable; Based on the x-vector and y-vector in the coordinate system matrix of the second worktable, determine the z-vector in the coordinate system matrix of the second worktable. The translation vector in the coordinate system matrix of the second workbench is determined based on the first teaching position of the second robot; The coordinate system matrix of the second worktable is constructed based on the x-vector, y-vector, z-vector, and translation vector in the coordinate system matrix of the second worktable.
8. The robot deployment processing method according to claim 1, characterized in that, The step of determining the target pose of the second work point corresponding to each of the first work points in the second worktable based on the first pose corresponding to each of the first work points and the coordinate system matrix of the second worktable includes: Multiply the first pose corresponding to each first work point with the coordinate system matrix of the second worktable to obtain the target pose of the second work point corresponding to each first work point in the second worktable.
9. A robot deployment and processing system, characterized in that, include: The system includes a control device, a robot, and multiple workbenches, each with the same number of work points deployed on it, and the work point deployment structure of each workbench is identical. The control device is used to implement robot deployment processing through the steps of the robot deployment processing method according to any one of claims 1-8.
10. An electronic device, characterized in that, It includes a memory and a processor, the memory storing a computer program executable by the processor, the processor executing the computer program to implement the steps of the robot deployment processing method according to any one of claims 1-8.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the robot deployment processing method as described in any one of claims 1-8.
Citation Information
Patent Citations
System and method for controlling coordination movement of industrial robot and position changing machine
CN103513612A
Line laser welding seam automatic tracking system and method based on visual demonstration
CN113102880A