Assembly method, device, electronic equipment and storage medium
By displaying candidate sub-tasks during robot assembly and using tactile interaction to determine contact point coordinates, the problem of low human-computer interaction efficiency in existing technologies is solved, achieving efficient user intent understanding and robot response.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-06
- Publication Date
- 2026-03-24
AI Technical Summary
Existing mixed reality human-computer interaction technologies struggle to achieve efficient intent transmission in complex manufacturing scenarios. Visual interfaces are susceptible to environmental interference, and language interaction may suffer from instruction recognition errors due to noise or accents.
By displaying optional sub-tasks during the robot assembly process, users can select the target task on the terminal and determine the coordinates of the contact point through contact force and torque values, thereby controlling the robot to perform assembly operations and improving human-robot collaboration efficiency through tactile interaction.
It improves the efficiency of human-robot collaborative assembly, ensures that the robot accurately understands the user's intentions, reduces the impact of delays and environmental interference, and enables flexible response to user needs.
Smart Images

Figure CN121070232B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of assembly technology, and in particular relates to an assembly method, apparatus, electronic device, and storage medium. Background Technology
[0002] In modern manufacturing, human-machine collaboration, by integrating the adaptability and creativity of human cognition with the precision and efficiency of machine operation, has become a key technological direction for improving production efficiency. Currently, human-machine two-way intention understanding and interaction technology is a research focus in this field. Among them, mixed reality technology, with its immersive experience and real-time interaction capabilities, provides an innovative path to enhance the intuitiveness of human-machine collaboration and improve collaboration efficiency, and has been gradually applied in various manufacturing collaboration scenarios.
[0003] Existing mixed reality human-computer interaction systems mainly construct interaction links through visual and language channels. The visual channel relies on the virtual scene rendering capabilities of mixed reality devices to present information such as collaborative instructions and device status to human operators through a visual interface. The language channel uses speech recognition and synthesis technology to realize the transmission and feedback of instructions between humans and machines.
[0004] However, existing mixed reality human-computer interaction technologies still have significant shortcomings. They rely too much on visual and language channels to transmit information. In complex manufacturing scenarios, the visual interface is easily affected by environmental interference, while language interaction may lead to errors in instruction recognition due to noise and accents. When the two are used alone or in combination, it is difficult to achieve efficient intention transmission, which affects the efficiency of human-computer collaboration. Summary of the Invention
[0005] This application provides an assembly method, apparatus, electronic device, and storage medium that can effectively improve the assembly efficiency of human-machine collaboration.
[0006] In a first aspect, embodiments of this application provide an assembly method applied to a first terminal, the first terminal being communicatively connected to a robot, the method comprising:
[0007] During the assembly process of the robot, each time the robot is detected to have performed a preset task, at least two candidate sub-tasks configured for the preset task are displayed;
[0008] In response to a user's triggering operation on a second terminal, a candidate subtask is selected from the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal.
[0009] Control the robot to perform the assembly operation corresponding to the target task.
[0010] In one embodiment of this application, the step of selecting one candidate subtask as the target task from the at least two candidate subtasks in response to a user's trigger operation on a second terminal includes:
[0011] In response to a user's trigger operation on the second terminal, the system acquires a first parameter generated by the trigger operation on the second terminal. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in the first direction, a second torque value in the second direction, and a third torque value in a third direction. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to both the first and second directions.
[0012] The second parameter is obtained based on the first parameter and the basic parameter, wherein the basic parameter is a parameter measured when the second terminal is in a non-interactive state;
[0013] Based on the second parameter, determine the coordinates of the contact point on the second terminal where the triggering operation is performed;
[0014] The target interaction area is determined from multiple interaction areas on the second terminal based on the coordinates of the contact point.
[0015] Based on the functions configured in the target interaction area, select one of the at least two candidate subtasks as the target task.
[0016] In one embodiment of this application, the second parameter includes a second contact force value corrected in a second direction, a first torque value corrected in a first direction, and a third torque value corrected upwards for each first sampling point within a first preset time period;
[0017] Determining the coordinates of the contact point on the second terminal based on the second parameter includes:
[0018] When multiple corrected second contact force values are greater than a preset threshold, the average of multiple first ratios is used as the horizontal axis, and the first ratio is the ratio of the corrected first torque value to the corrected second contact force value corresponding to the first sampling point;
[0019] The average of multiple second ratios is used as the ordinate, and the second ratio is the ratio of the corrected third torque value to the corrected second contact force value corresponding to the first sampling point;
[0020] The horizontal and vertical coordinates are used as the coordinates of the contact point.
[0021] In one embodiment of this application, determining the target interaction area in multiple interaction areas on the second terminal based on the coordinates of the contact point includes:
[0022] Based on the coordinates of the contact point and the coordinate range of each of the multiple interactive areas on the second terminal, the coordinate range of the contact point is determined.
[0023] The interaction area to which the coordinates of the contact point are located is determined as the target interaction area.
[0024] In one embodiment of this application, the basic parameters are obtained as follows:
[0025] When the second terminal is detected to be in a non-interactive state, the fourth contact force value in the first direction, the fifth contact force value in the second direction, the sixth contact force value in the third direction, the fourth torque value in the first direction, the fifth torque value in the second direction, and the sixth torque value in the third direction are acquired at each second sampling point within the second preset time period.
[0026] The first value is obtained by averaging the multiple fourth contact force values; the second value is obtained by averaging the multiple fifth contact force values; and the third value is obtained by averaging the multiple sixth contact force values.
[0027] The fourth value is obtained by averaging the multiple fourth torque values; the fifth value is obtained by averaging the multiple fifth torque values; and the sixth value is obtained by averaging the multiple sixth torque values.
[0028] The first value, the second value, the third value, the fourth value, the fifth value, and the sixth value are used as elements in the basic vector, and the basic vector is used as the basic parameter.
[0029] In one embodiment of this application, the second terminal is in a non-interactive state as determined in the following manner:
[0030] Acquire the seventh contact force value in the first direction, the eighth contact force value in the second direction, and the ninth contact force value in the third direction at each third sampling point within the third preset time period;
[0031] A first standard deviation is calculated based on a plurality of seventh contact force values, a second standard deviation is calculated based on a plurality of eighth contact force values, and a third standard deviation is calculated based on a plurality of ninth contact force values;
[0032] If the first standard deviation, the second standard deviation, and the third standard deviation are all less than the first threshold, the second terminal is determined to be in a non-interactive state.
[0033] In one embodiment of this application, the second terminal is generated according to the following steps:
[0034] Receive configuration information from the user for the second terminal, the configuration information including the shape of the second terminal, the number of interactive areas of the second terminal, the position of the interactive areas of the second terminal, and the function of the interactive areas of the second terminal;
[0035] A 3D printing operation is performed based on the configuration information, and the 3D printing operation is used to generate the second terminal.
[0036] Secondly, embodiments of this application provide an assembly device applied to a first terminal, the first terminal being communicatively connected to a robot, the device comprising:
[0037] The monitoring module is used to display at least two candidate sub-tasks configured for the preset task each time the robot is detected to have performed a preset task during the assembly process of the robot.
[0038] The processing module is used to respond to a user's trigger operation on a second terminal and select one of the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal.
[0039] The control module is used to control the robot to perform the assembly operation corresponding to the target task.
[0040] Thirdly, embodiments of this application provide an electronic device, including: a processor and a memory storing computer program instructions;
[0041] When the processor executes the computer program instructions, it implements the assembly method as described in the first aspect.
[0042] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the assembly method as described in the first aspect.
[0043] Fifthly, embodiments of this application provide a computer program product, wherein instructions in the computer program product, when executed by a processor of an electronic device, cause the electronic device to perform the assembly method as described in the first aspect.
[0044] This embodiment proposes an assembly method, apparatus, electronic device, and storage medium. During the assembly process of the robot, each time the robot is detected to have executed a preset task, at least two candidate sub-tasks configured for the preset task are displayed. In response to a user's trigger operation on a second terminal, one candidate sub-task is selected as the target task from the at least two candidate sub-tasks. The second terminal is generated according to user needs and is communicatively connected to the first terminal. The robot is controlled to execute the assembly operation corresponding to the target task. The user selects the target task from the two candidate sub-tasks through the second terminal and controls the robot to execute the assembly task, ensuring that the robot understands the user's intentions, effectively improving the assembly efficiency of human-machine collaboration. Moreover, the second terminal is configured according to user needs and has flexibility. Attached Figure Description
[0045] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0046] Figure 1 This is a schematic flowchart of the assembly method provided in an embodiment of this application;
[0047] Figure 2 This is a schematic diagram of a behavior tree provided in an embodiment of this application;
[0048] Figure 3 This is a schematic diagram of the assembly frame provided in an embodiment of this application;
[0049] Figure 4 This is a schematic diagram of coordinate mapping provided in an embodiment of this application;
[0050] Figure 5 This is a schematic diagram of the assembly device provided in the embodiments of this application;
[0051] Figure 6 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0052] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0053] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, 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 limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.
[0054] In all specific embodiments of this application, when processing data related to user identity or characteristics, such as user information, user behavior data, user historical data, and user location information, user permission or consent is obtained first. Furthermore, the collection, use, and processing of this data comply with relevant laws, regulations, and standards. Additionally, when embodiments of this application require access to sensitive personal information, separate permission or consent from the user is obtained through pop-ups or redirects to confirmation pages. Only after obtaining the user's separate permission or consent is the necessary user-related data required for the proper functioning of these embodiments obtained.
[0055] To address the problems of the prior art, embodiments of this application provide an assembly method, apparatus, electronic device, and storage medium. The assembly method provided in this application embodiment will be described first.
[0056] Figure 1 A schematic flowchart of an assembly method provided in one embodiment of this application is shown. Figure 1 As shown, the assembly method provided in this application embodiment, applied to a first terminal, includes the following steps 101-103, wherein:
[0057] Step 101: During the assembly process of the robot, whenever the robot is detected to be performing a preset task, at least two candidate sub-tasks configured for the preset task are displayed.
[0058] The assembly method provided in this application embodiment is applied to a first terminal. The first terminal is communicatively connected to a robot. During the assembly process, the task executed by the robot is monitored. When the robot is detected to have executed a preset task, at least two candidate sub-tasks configured for the preset task are displayed. Optionally, the first terminal includes a display screen, which displays at least two candidate sub-tasks configured for the preset task for the user to select a sub-task.
[0059] Optionally, the first terminal acquires the behavior tree for this assembly task. The behavior tree includes multiple nodes, each node recording a corresponding task. The robot executes each task sequentially according to the task order in the behavior tree, such as... Figure 2 As shown, Figure 2 This is a behavior tree diagram. The robot can use this behavior tree for assembly. During the assembly process, the first terminal monitors the robot's task execution. Whenever the robot executes a preset task, the preset task can be... Figure 2 The nodes for manual selection and manual intervention are displayed as at least two candidate subtasks in the preset task configuration.
[0060] like Figure 3 As shown, the assembly process is broken down based on a behavior tree. The behavior tree includes nodes such as root sequence, part selection, grasping, assembly, and task completion. Part selection includes manual selection, which can be a preset node or preset task. The configured sub-tasks are: displaying the part selection panel and robot autonomous selection. Grasping includes part graspability, path planning, grasping execution, and grasping success. Assembly is a preset node, and the configured sub-tasks are: precise positioning, displaying the insertion method panel, contact detection, and manual intervention. Manual intervention can also be a preset node, and the configured sub-tasks are: displaying the manual operation panel and task completion. Task completion includes feedback results and returning to standby. To support the process-oriented management of multi-step tasks, a behavior tree is used for assembly. The behavior tree has a good hierarchical structure and scalability, enabling the decomposition of complex interactive tasks into nodes and management in a clearly logical structure. After receiving the human-machine collaborative assembly task, the first terminal models the assembly task using a behavior tree, breaking it down into multiple tasks. Each node in the behavior tree represents a single-step assembly process; that is, each node records one task, such as... Figure 2 As shown, the behavior tree includes grasping tasks and insertion tasks; or the behavior tree can be pre-configured, the first terminal receives the behavior tree, sends the behavior tree to the robot, and the robot assembles according to the behavior tree.
[0061] To enable the robot to perform multi-mode tasks in stages, it is necessary to target certain nodes in the behavior tree, i.e., preset nodes, such as... Figure 3As shown, this is a single-step mixed reality interface design. (Continue to refer to...) Figure 2 This includes a part selection panel, an insertion method panel, and a manual operation panel, designed according to different second-terminal button layouts and tasks. For example, in the behavior tree, the "part selection panel" can be configured to display virtual part images on the second terminal. When the user selects a part image, the robot performs the corresponding gripping operation. The "insertion method panel" can be configured to configure different insertion methods on the second terminal, such as compliant insertion, rigid insertion, and vibration-assisted insertion. When the user selects an insertion method on the second terminal, the robot performs the corresponding insertion operation. The "manual operation panel" can be configured with up, down, left, right, forward, and backward buttons on the second terminal to control the robot's end effector to perform corresponding assembly operations.
[0062] like Figure 3 As shown, the multi-step process integration design highly integrates the user's touch button selection with various assembly instructions and the robotic arm's assembly operations. It can control the robot to perform corresponding assembly operations based on the user's selection of at least two sub-tasks. Optionally, it integrates Vuforia Model Target Generator and Unity development environment to realize spatial recognition, posture estimation and dynamic UI display of the second terminal. This allows visual cues from mixed reality to be superimposed on the second terminal with high precision and to change in real time as the task progresses.
[0063] Step 102: In response to a user's trigger operation on a second terminal, select one of the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal.
[0064] Optionally, the first terminal is communicatively connected to the second terminal, and the second terminal can also be communicatively connected to the robot. The second terminal is a terminal generated according to user needs. The user selects a candidate subtask from at least two candidate subtasks through the second terminal. In response to the user's trigger operation on the second terminal, a candidate subtask is selected as the target task from at least two candidate subtasks.
[0065] Step 103: Control the robot to perform the assembly operation corresponding to the target task.
[0066] In this embodiment, the robot is controlled to perform assembly operations corresponding to the target task, such as grasping, placing, and inserting.
[0067] In this embodiment, during the robot's assembly process, each time the robot is detected to have executed a preset task, at least two candidate sub-tasks configured for the preset task are displayed. In response to the user's trigger operation on the second terminal, a sub-task is selected from the at least two candidate sub-tasks as the target task. The second terminal is communicatively connected to the first terminal and is generated according to the user's needs. It controls the robot to execute the assembly operation corresponding to the target task. The user selects the target task from the two candidate sub-tasks through the second terminal and controls the robot to execute the assembly task, ensuring that the robot understands the user's intentions and effectively improving the assembly efficiency of human-machine collaboration. Moreover, the second terminal is configured according to the user's needs and has flexibility.
[0068] In one embodiment of this application, the step of selecting one candidate subtask as the target task from the at least two candidate subtasks in response to a user's trigger operation on a second terminal includes:
[0069] In response to a user's trigger operation on the second terminal, the system acquires a first parameter generated by the trigger operation on the second terminal. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in the first direction, a second torque value in the second direction, and a third torque value in a third direction. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to both the first and second directions.
[0070] The second parameter is obtained based on the first parameter and the basic parameter, wherein the basic parameter is a parameter measured when the second terminal is in a non-interactive state;
[0071] Based on the second parameter, determine the coordinates of the contact point on the second terminal where the triggering operation is performed;
[0072] The target interaction area is determined from multiple interaction areas on the second terminal based on the coordinates of the contact point.
[0073] Based on the functions configured in the target interaction area, select one of the at least two candidate subtasks as the target task.
[0074] In this embodiment, in response to a user's trigger operation on a second terminal, the first parameter generated by the trigger operation on the second terminal is obtained. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in a first direction, a second torque value in a second direction, and a third torque value in a third direction.
[0075] The first direction is parallel to the second terminal, i.e., the x-axis; the second direction is perpendicular to the second terminal, i.e., the y-axis; and the third direction is perpendicular to both the first and second directions, i.e., the z-axis.
[0076] The second parameter is obtained based on the first parameter and the basic parameter. The basic parameter is the parameter measured when the second terminal is in a non-interactive state. The non-interactive state means that the user has not interacted with the second terminal, that is, there is no trigger operation. Specifically, the basic parameter is represented in the form of a vector, that is, the basic vector.
[0077] Specifically, the first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in a first direction, a second torque value in a second direction, and a third torque value in a third direction, all collected at each first sampling point within a first preset time period.
[0078] Optionally, for each first sampling point, the first contact force value in the first direction, the second contact force value in the second direction, the third contact force value in the third direction, the first torque value in the first direction, the second torque value in the second direction, and the third torque value in the third direction collected at the first sampling point are respectively used as elements in the first vector in order to obtain the first vector, such as, [ , , , , This is the first contact force value. This is the second contact force value. This is the third contact force value. This is the first torque value. This is the second torque value. This represents the third torque value. Using the above method, we obtain the first vector corresponding to each of the multiple first sampling points. The order of elements in different vectors is the same, meaning the same element is in the same position in different vectors.
[0079] The second parameter is obtained based on the first parameter and the basic parameter. Specifically, the first vector is corrected using the basic vector. For each first vector, the difference between the first vector and the basic vector is calculated to obtain the second vector, as shown in formula (1).
[0080] (1);
[0081] in, For the second vector, Let be the first vector. It is the basic vector.
[0082] Furthermore, for each second vector, each element in the second vector is obtained to obtain the first contact force value corrected in the first direction, the second contact force value corrected in the second direction, the third contact force value corrected upwards in the third direction, the first torque value corrected in the first direction, the second torque value corrected in the second direction, and the third torque value corrected upwards in the third direction corresponding to the first sampling point. In the above manner, the first contact force value corrected in the first direction, the second contact force value corrected in the second direction, the third contact force value corrected upwards in the third direction, the first torque value corrected in the first direction, the second torque value corrected in the second direction, and the third torque value corrected upwards in the third direction corresponding to each first sampling point are obtained.
[0083] The second parameter includes a first contact force value corrected in a first direction, a second contact force value corrected in a second direction, a third contact force value corrected upwards by a third party, a first torque value corrected in a first direction, a second torque value corrected in a second direction, and a third torque value corrected upwards by a third party for each first sampling point within a first preset time period.
[0084] The coordinates of the contact point on the second terminal are determined based on the second parameter. The contact point is the point that the user touches when interacting with the second terminal. The target interaction area is determined based on the coordinates of the contact point in multiple interaction areas on the second terminal. Multiple interaction areas are set on the second terminal, and each interaction area is configured with corresponding functions, such as grab, insert, turn left, turn right, etc.
[0085] Based on the functions configured in the target interaction area, select one subtask from at least two candidate subtasks as the target task.
[0086] It ensures high sensitivity and high accuracy of user tactile interaction while minimizing latency, thus guaranteeing the robot's real-time responsiveness and accuracy in dynamic states.
[0087] In one embodiment of this application, the second parameter includes a second contact force value corrected in a second direction, a first torque value corrected in a first direction, and a third torque value corrected upwards for each first sampling point within a first preset time period;
[0088] Determining the coordinates of the contact point on the second terminal based on the second parameter includes:
[0089] When multiple corrected second contact force values are greater than a preset threshold, the average of multiple first ratios is used as the horizontal axis, and the first ratio is the ratio of the corrected first torque value to the corrected second contact force value corresponding to the first sampling point;
[0090] The average of multiple second ratios is used as the ordinate, and the second ratio is the ratio of the corrected third torque value to the corrected second contact force value corresponding to the first sampling point;
[0091] The horizontal and vertical coordinates are used as the coordinates of the contact point.
[0092] In this embodiment, the second parameter includes a first contact force value corrected in a first direction, a second contact force value corrected in a second direction, a third contact force value corrected upwards in a third direction, a first torque value corrected in a first direction, a second torque value corrected in a second direction, and a third torque value corrected upwards in a third direction for each first sampling point within a first preset time period.
[0093] When multiple corrected second contact force values are all greater than a preset threshold, for each first sampling point, the ratio of the corrected first torque value to the corrected second contact force value corresponding to the first sampling point is calculated to obtain the first ratio. For multiple first sampling points, the average value of multiple first ratios corresponding to multiple first sampling points is calculated, and the average value is used as the horizontal axis.
[0094] For each first sampling point, the ratio of the corrected third torque value to the corrected second contact force value corresponding to the first sampling point is calculated to obtain the second ratio. For multiple first sampling points, the average value of the multiple second ratios corresponding to the multiple first sampling points is calculated, and the average value is used as the ordinate.
[0095] The specific calculation methods for the above x-axis and y-axis are as follows:
[0096] (2);
[0097] Where N is a positive integer, representing the number of first sampling points. When calculating the x-coordinate Px, i=x, k=x, T k For T x T x,j F represents the first torque value corrected in the first direction corresponding to the j-th first sampling point. y,j This represents the corrected second contact force value in the second direction corresponding to the j-th first sampling point; when calculating the ordinate Py, i=y, k=z, T k For T z T z,j This represents the third torque value for upward correction corresponding to the j-th first sampling point.
[0098] Using the above x and y coordinates as the coordinates of the contact point, see [link / reference]. Figure 4 The first ratio (the ratio of the first torque value to the second contact force value) and the second ratio (the ratio of the third torque value to the second contact force value) are mapped to coordinates.
[0099] like Figure 3 As shown, before contact point mapping, the user first needs to perform touch interactions on various interactive areas of the second terminal and collect the force signals. Based on the collected force signals and the direction of the force applied to the second terminal during the interaction, an axial contact force value is selected (this direction must be perpendicular to the second terminal, such as...). ) and the torque values in the other two directions ( ), using preset thresholds and time period The average ratio of the internal torque to the contact force, where F is a preset threshold. y,j This represents the corrected second contact force value in the second direction corresponding to the j-th first sampling point. When multiple corrected second contact force values are greater than a preset threshold, the two-dimensional coordinates are calculated. And map the contact points onto the plane. The two-dimensional plane and contact point mapping are as follows: Figure 4 As shown, taking the second terminal, which includes nine interactive areas, as an example, each interactive area corresponds to a function. According to the mapping, the corresponding threshold can be obtained to complete the force signal analysis design of the second terminal.
[0100] The terminal is configured according to user needs to provide tactile feedback to users and convert user tactile interaction into physical signals that the robot can understand. It has the advantages of low cost, natural interaction and flexible deployment.
[0101] In one embodiment of this application, determining the target interaction area in multiple interaction areas on the second terminal based on the coordinates of the contact point includes:
[0102] Based on the coordinates of the contact point and the coordinate range of each of the multiple interactive areas on the second terminal, the coordinate range of the contact point is determined.
[0103] The interaction area to which the coordinates of the contact point are located is determined as the target interaction area.
[0104] In this embodiment, based on the coordinates of the contact point and the coordinate range of each of the multiple interactive areas on the second terminal, the coordinate range in which the contact point's coordinates lie is determined. The interactive area to which the coordinate range in which the contact point's coordinates lie is located is then defined as the target interactive area. Figure 4 As shown, taking the second terminal, which includes nine interactive areas, as an example, each interactive area has its own coordinate range, such as... Figure 4 Each labeled region is composed of multiple coordinate points. The area enclosed by these coordinate points is the coordinate range, and the coordinate boundaries are... Figure 4If the contact point is located within the coordinate range of region number 1 (the area marked with a dashed line), then region number 1 will be designated as the target interaction area.
[0105] The above method can accurately locate the target interaction area for the user on the second terminal.
[0106] In one embodiment of this application, the basic parameters are obtained as follows:
[0107] When the second terminal is detected to be in a non-interactive state, the fourth contact force value in the first direction, the fifth contact force value in the second direction, the sixth contact force value in the third direction, the fourth torque value in the first direction, the fifth torque value in the second direction, and the sixth torque value in the third direction are acquired at each second sampling point within the second preset time period.
[0108] The first value is obtained by averaging the multiple fourth contact force values; the second value is obtained by averaging the multiple fifth contact force values; and the third value is obtained by averaging the multiple sixth contact force values.
[0109] The fourth value is obtained by averaging the multiple fourth torque values; the fifth value is obtained by averaging the multiple fifth torque values; and the sixth value is obtained by averaging the multiple sixth torque values.
[0110] The first value, the second value, the third value, the fourth value, the fifth value, and the sixth value are used as elements in the basic vector, and the basic vector is used as the basic parameter.
[0111] In this embodiment, when the second terminal is detected to be in a non-interactive state and in a horizontal state, the fourth contact force value in the first direction, the fifth contact force value in the second direction, the sixth contact force value in the third direction, the fourth torque value in the first direction, the fifth torque value in the second direction, and the sixth torque value in the third direction are acquired at each second sampling point within a second preset time period. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to the first direction and the second direction, respectively.
[0112] The average of multiple fourth contact force values at multiple second sampling points is calculated to obtain a first value; the average of multiple fifth contact force values at multiple second sampling points is calculated to obtain a second value; and the average of multiple sixth contact force values at multiple second sampling points is calculated to obtain a third value.
[0113] The average of multiple fourth torque values at multiple second sampling points is calculated to obtain the fourth value; the average of multiple fifth torque values at multiple second sampling points is calculated to obtain the fifth value; and the average of multiple sixth torque values at multiple second sampling points is calculated to obtain the sixth value.
[0114] Furthermore, the first, second, third, fourth, fifth, and sixth values are used as elements in the basic vector, and the basic vector is used as the basic parameters, as shown below:
[0115] (3);
[0116] in, The base vector is M1, where M1 is a positive integer representing the number of secondary sampling points. The fourth contact force value in the first direction at the i-th second sampling point. The fifth contact force value in the second direction at the i-th second sampling point. Let the sixth contact force value be the third upward force value at the i-th second sampling point. The fourth torque value in the first direction at the i-th second sampling point. The fifth torque value in the second direction at the i-th second sampling point. This is the sixth upward torque value of the third force at the i-th second sampling point. For example... Figure 3 As shown, the basic parameters can serve as a benchmark for dynamic decay, while the basic vector is used for correction.
[0117] In one embodiment of this application, the second terminal is in a non-interactive state as determined in the following manner:
[0118] Acquire the seventh contact force value in the first direction, the eighth contact force value in the second direction, and the ninth contact force value in the third direction at each third sampling point within the third preset time period;
[0119] A first standard deviation is calculated based on a plurality of seventh contact force values, a second standard deviation is calculated based on a plurality of eighth contact force values, and a third standard deviation is calculated based on a plurality of ninth contact force values;
[0120] If the first standard deviation, the second standard deviation, and the third standard deviation are all less than the first threshold, the second terminal is determined to be in a non-interactive state.
[0121] In this embodiment, the seventh contact force value in the first direction, the eighth contact force value in the second direction, and the ninth contact force value in the third direction are acquired at each third sampling point within a third preset time period. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to the first direction and the second direction, respectively.
[0122] The standard deviation of the seventh contact force values at multiple third sampling points is calculated to obtain the first standard deviation, specifically:
[0123] (4);
[0124] in, The first standard deviation, The seventh contact force value in the first direction at the kth third sampling point. M2 is the average of multiple seventh contact force values, and M2 is a positive integer representing the number of multiple third sampling points.
[0125] The standard deviation of the eighth contact force values at multiple third sampling points is calculated to obtain the second standard deviation, specifically:
[0126] (5);
[0127] in, The second standard deviation, This represents the eighth contact force value in the second direction at the kth third sampling point. M2 is the average of multiple eighth contact force values, and M2 is a positive integer representing the number of multiple third sampling points.
[0128] The standard deviation of the ninth contact force values at multiple third sampling points is calculated to obtain the third standard deviation, specifically:
[0129] (6);
[0130] in, The third standard deviation, The ninth contact force value in the upward direction of the third sampling point at the kth sampling point. M2 is the average of the ninth contact force values at multiple third sampling points, where M2 is a positive integer representing the number of third sampling points.
[0131] Compare the relationships between the first standard deviation, the second standard deviation, and the third standard deviation and the first threshold. If the first standard deviation, the second standard deviation, and the third standard deviation are all less than the first threshold, then... ,in, If the above conditions are met, the second terminal is determined to be in a non-interactive state, indicating that the user has not touched or interacted with the second terminal.
[0132] The above method can accurately determine whether the user is interacting with the second terminal, thereby accurately determining the status of the second terminal.
[0133] In one embodiment of this application, the second terminal is generated according to the following steps:
[0134] Receive configuration information from the user for the second terminal, the configuration information including the shape of the second terminal, the number of interactive areas of the second terminal, the position of the interactive areas of the second terminal, and the function of the interactive areas of the second terminal;
[0135] A 3D printing operation is performed based on the configuration information, and the 3D printing operation is used to generate the second terminal.
[0136] In this embodiment, configuration information for the second terminal is received from the user. The configuration information includes the shape of the second terminal, the number of interactive areas of the second terminal, the location of the interactive areas of the second terminal, and the function of the interactive areas of the second terminal.
[0137] Optionally, starting from user needs, users can propose the desired interaction mode for the second terminal based on specific work scenarios and task requirements, such as touch, swipe, writing, and tapping. Configuration information is generated based on user needs, including the shape of the second terminal, the number of interactive areas, the function of each interactive area, the size of each interactive area, the weight of the second terminal, and the interface type, ensuring that user requirements are met. For example, the second terminal can be mounted on the robot's robotic arm, and its size can be less than 200mm × 200mm. This size ensures sufficient operating space for users during touch and swipe interactions, while avoiding excessive movement of the robotic arm or increased risk of collision due to an excessively large size. Figure 3 The geometric design section showcases three different geometric design schemes for the second terminal. After the user selects a scheme according to their needs, a 3D printing operation is performed to ensure that the strength and weight meet the installation requirements at the end of the robotic arm, and the second terminal is then installed at the end of the robot's robotic arm.
[0138] Configure a second terminal according to user needs to meet their interaction requirements and enhance user experience. Second terminals obtained through printing are relatively low-cost and can meet the customized needs of different users.
[0139] Optionally, such as Figure 3As shown, the robot can perform virtual-real registration. After achieving marker-based virtual-real registration, it executes virtual motion planning and physical robot execution based on robot operation instructions from the second terminal and the dynamic interaction system. Specifically, the user wears a mixed reality head-mounted device, which is communicatively connected to the first terminal, the second terminal, and the robot. Utilizing the spatial computing capabilities of the mixed reality head-mounted device, QR code markers are placed around the robot, and the spatial coordinate system of these QR code markers can be obtained. And obtain the mixed reality space coordinate system To the spatial coordinate system of the QR code mark homogeneous transformation matrix Simultaneously, the spatial coordinate system of the QR code marker is obtained. To the robot coordinate system homogeneous transformation matrix The target position coordinate system is obtained through homogeneous transformation matrix. To the robot coordinate system The homogeneous transformation matrix is as follows:
[0140] (7);
[0141] in, For the target position coordinate system To the robot coordinate system The homogeneous transformation matrix, For the target position coordinate system To the mixed reality coordinate system The homogeneous transformation matrix, For mixed reality space coordinate system To the spatial coordinate system of the QR code mark The homogeneous transformation matrix, Spatial coordinate system for QR code marking To the robot coordinate system The homogeneous transformation matrix.
[0142] This means that if a user specifies a virtual location in a mixed reality space... The coordinates of the target position in the robot coordinate system are obtained by formula (8), which is as follows:
[0143] (8);
[0144] in, The virtual position is the coordinate of the target position in the robot coordinate system. , For the target position coordinate system To the robot coordinate system The homogeneous transformation matrix.
[0145] The first terminal obtains the virtual position, i.e. the target position, in the robot coordinate system according to the above method, and controls the robot to move to that position to achieve virtual-real registration.
[0146] Virtual motion planning and physical robot execution: Virtual motion planning involves generating robot paths and resolving joints based on the robot's planned movements as instructed by the user. For each end effector pose, the Cyclic Coordinate Descent (CCDIK) algorithm (inverse kinematics) is used to calculate the motion angles of each joint. Robot execution is responsible for communication between the mixed reality headset and the physical robot, sending the joint signals calculated by CCDIK to the robot. This communication is managed by the TCP / IP protocol, controlling the robot to perform corresponding assembly operations.
[0147] A behavior tree-based dynamic interaction system effectively connects multi-step assembly tasks, using label-based robot virtual-real registration and communication to drive the robot. While interacting with the user, it ensures the robot understands the user's intentions, improving the efficiency and flexibility of human-robot collaborative assembly. An interactive terminal, or second terminal, is configured according to user preferences, converting user tactile interactions into physical signals understandable to the robot, offering advantages such as low cost, natural interaction, and flexible deployment. The system integrates a behavior tree-based dynamic interaction system, decomposing the process according to the assembly task's behavior tree. This allows for the design of a mixed reality interactive interface that merges with the second terminal for each assembly step, enabling users to send commands to the robot through visual cues and tactile interactions. The mixed reality interactive interface dynamically changes according to the current task, achieving smooth multi-step transitions. Robot virtual-real registration provides label-based virtual-robot coordinate system and posture registration, enabling communication between the mixed reality system and the physical robot. Combined with human operation commands, it performs path planning and motion generation, driving the physical robot to complete the assembly task.
[0148] Figure 5 A structural diagram of the assembly apparatus provided in an embodiment of this application is shown. Figure 5 As shown, the assembly device 500 includes:
[0149] Monitoring module 501 is used to display at least two candidate sub-tasks configured for the preset task each time the robot is detected to have performed a preset task during the assembly process of the robot.
[0150] Processing module 502 is used to respond to a user's trigger operation on a second terminal and select one of the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal.
[0151] The control module 503 is used to control the robot to perform the assembly operation corresponding to the target task.
[0152] In one embodiment of this application, the processing module 502 includes a first processing submodule, a first calculation submodule, a first determination submodule, and a selection submodule;
[0153] The first processing submodule is configured to respond to a user's trigger operation on the second terminal and obtain a first parameter generated by the trigger operation on the second terminal. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in the first direction, a second torque value in the second direction, and a third torque value in a third direction. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to the first direction and the second direction, respectively.
[0154] The first calculation submodule is used to obtain the second parameter based on the first parameter and the basic parameter, wherein the basic parameter is a parameter measured when the second terminal is in a non-interactive state;
[0155] The first determining submodule is used to determine the coordinates of the contact point of the triggering operation on the second terminal according to the second parameter; and to determine the target interaction area in multiple interaction areas on the second terminal according to the coordinates of the contact point.
[0156] The selection submodule is used to select one candidate subtask as the target task from the at least two candidate subtasks based on the functions configured in the target interaction area.
[0157] In one embodiment of this application, the second parameter includes a second contact force value corrected in a second direction, a first torque value corrected in a first direction, and a third torque value corrected upwards for each first sampling point within a first preset time period; the first determining submodule includes a first determining subunit and a second determining subunit;
[0158] The first determining subunit is configured to, when multiple corrected second contact force values are all greater than a preset threshold, take the average of multiple first ratios as the horizontal axis, where the first ratio is the ratio of the corrected first torque value to the corrected second contact force value corresponding to the first sampling point; and take the average of multiple second ratios as the vertical axis, where the second ratio is the ratio of the corrected third torque value to the corrected second contact force value corresponding to the first sampling point.
[0159] The second determining subunit is used to use the horizontal coordinate and the vertical coordinate as the coordinates of the contact point.
[0160] In one embodiment of this application, the first determining submodule includes a third determining subunit and a fourth determining subunit;
[0161] The third determining subunit is used to determine the coordinate range in which the coordinates of the contact point are located based on the coordinates of the contact point and the coordinate range of each of the multiple interactive areas on the second terminal.
[0162] The fourth determining subunit is used to determine the interaction area to which the coordinate range of the contact point belongs as the target interaction area.
[0163] In one embodiment of this application, the device further includes a parameter determination module;
[0164] The parameter determination module is used to, when detecting that the second terminal is in a non-interactive state, acquire, within a second preset time period, the fourth contact force value in the first direction, the fifth contact force value in the second direction, the sixth contact force value in the third direction, the fourth torque value in the first direction, the fifth torque value in the second direction, and the sixth torque value in the third direction at each second sampling point collected in the first preset time period; calculate the average of the multiple fourth contact force values to obtain a first value, calculate the average of the multiple fifth contact force values to obtain a second value, and calculate the average of the multiple sixth contact force values to obtain a third value; calculate the average of the multiple fourth torque values to obtain a fourth value, calculate the average of the multiple fifth torque values to obtain a fifth value, and calculate the average of the multiple sixth torque values to obtain a sixth value; and use the first value, the second value, the third value, the fourth value, the fifth value, and the sixth value as elements in a base vector, and use the base vector as the base parameter.
[0165] In one embodiment of this application, the parameter determination module includes a state determination submodule;
[0166] The state determination submodule is used to acquire the seventh contact force value in the first direction, the eighth contact force value in the second direction, and the ninth contact force value in the third direction at each third sampling point within a third preset time period; calculate a first standard deviation based on the plurality of seventh contact force values, calculate a second standard deviation based on the plurality of eighth contact force values, and calculate a third standard deviation based on the plurality of ninth contact force values; and determine that the second terminal is in a non-interactive state when the first standard deviation, the second standard deviation, and the third standard deviation are all less than a first threshold.
[0167] In one embodiment of this application, the apparatus includes a printing processing module;
[0168] The printing processing module is used to receive configuration information from the user for the second terminal, the configuration information including the shape of the second terminal, the number of interactive areas of the second terminal, the position of the interactive areas of the second terminal, and the function of the interactive areas of the second terminal; and to perform a 3D printing operation according to the configuration information, the 3D printing operation being used to generate the second terminal.
[0169] The assembly apparatus provided in this application embodiment can realize the various processes implemented in the aforementioned assembly method embodiment and achieve the same technical effect. To avoid repetition, it will not be described again here.
[0170] Figure 6 A schematic diagram of the hardware structure of the electronic device provided in an embodiment of this application is shown.
[0171] The electronic device may include a processor 601 and a memory 602 storing computer program instructions.
[0172] Specifically, the processor 601 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0173] Memory 602 may include mass storage for data or instructions. For example, and not limitingly, memory 602 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 602 may include removable or non-removable (or fixed) media. Where appropriate, memory 602 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 602 is non-volatile solid-state memory.
[0174] Memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to the first or second aspect of this disclosure.
[0175] The processor 601 implements any of the methods described above in the above embodiments by reading and executing computer program instructions stored in the memory 602.
[0176] In one example, the electronic device may also include a communication interface 603 and a bus 610. For example, Figure 6 As shown, the processor 601, memory 602, and communication interface 603 are connected through bus 610 and complete communication with each other.
[0177] The communication interface 603 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0178] Bus 610 includes hardware, software, or both, that couples components of a method or electronic device as described above together. For example, and not as a limitation, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 610 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, any suitable bus or interconnect is contemplated herein.
[0179] Alternatively, embodiments of this application can be implemented using a computer storage medium. This computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the assembly methods described in the above embodiments.
[0180] Alternatively, this application embodiment can provide a computer program product for implementation, wherein the instructions in the computer program product, when executed by the processor of an electronic device, cause the electronic device to implement any of the assembly methods in the above embodiments.
[0181] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described as examples. However, the method process of this application is not limited to the specific steps described. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0182] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0183] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0184] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0185] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. An assembly method, characterized in that, Applied to a first terminal, which is communicatively connected to a robot, the method includes: During the assembly process of the robot, each time the robot is detected to have performed a preset task, at least two candidate sub-tasks configured for the preset task are displayed; In response to a user's triggering operation on a second terminal, a candidate subtask is selected from the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal. Control the robot to perform the assembly operation corresponding to the target task; The step of selecting one candidate subtask as the target task from the at least two candidate subtasks in response to a user's trigger operation on the second terminal includes: In response to a user's trigger operation on the second terminal, the system acquires a first parameter generated by the trigger operation on the second terminal. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in the first direction, a second torque value in the second direction, and a third torque value in a third direction. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to both the first and second directions. The second parameter is obtained based on the first parameter and the basic parameter, wherein the basic parameter is a parameter measured when the second terminal is in a non-interactive state; Based on the second parameter, determine the coordinates of the contact point on the second terminal where the triggering operation is performed; The target interaction area is determined from multiple interaction areas on the second terminal based on the coordinates of the contact point. Based on the functions configured in the target interaction area, select one of the at least two candidate subtasks as the target task.
2. The assembly method according to claim 1, characterized in that, The second parameter includes a second contact force value corrected in the second direction, a first torque value corrected in the first direction, and a third torque value corrected upwards for each first sampling point within a first preset time period; Determining the coordinates of the contact point on the second terminal based on the second parameter includes: When multiple corrected second contact force values are greater than a preset threshold, the average of multiple first ratios is used as the horizontal axis, and the first ratio is the ratio of the corrected first torque value to the corrected second contact force value corresponding to the first sampling point; The average of multiple second ratios is used as the ordinate, and the second ratio is the ratio of the corrected third torque value to the corrected second contact force value corresponding to the first sampling point; The horizontal and vertical coordinates are used as the coordinates of the contact point.
3. The assembly method according to claim 1, characterized in that, Determining the target interaction area in multiple interaction areas on the second terminal based on the coordinates of the contact point includes: Based on the coordinates of the contact point and the coordinate range of each of the multiple interactive areas on the second terminal, the coordinate range of the contact point is determined. The interaction area to which the coordinates of the contact point are located is determined as the target interaction area.
4. The assembly method according to claim 1, characterized in that, The basic parameters are obtained as follows: When the second terminal is detected to be in a non-interactive state, the fourth contact force value in the first direction, the fifth contact force value in the second direction, the sixth contact force value in the third direction, the fourth torque value in the first direction, the fifth torque value in the second direction, and the sixth torque value in the third direction are acquired at each second sampling point within the second preset time period. The first value is obtained by averaging the multiple fourth contact force values; the second value is obtained by averaging the multiple fifth contact force values; and the third value is obtained by averaging the multiple sixth contact force values. The fourth value is obtained by averaging the multiple fourth torque values; the fifth value is obtained by averaging the multiple fifth torque values; and the sixth value is obtained by averaging the multiple sixth torque values. The first value, the second value, the third value, the fourth value, the fifth value, and the sixth value are used as elements in the basic vector, and the basic vector is used as the basic parameter.
5. The assembly method according to claim 4, characterized in that, The second terminal is in a non-interactive state as determined in the following way: Acquire the seventh contact force value in the first direction, the eighth contact force value in the second direction, and the ninth contact force value in the third direction at each third sampling point within the third preset time period; A first standard deviation is calculated based on a plurality of seventh contact force values, a second standard deviation is calculated based on a plurality of eighth contact force values, and a third standard deviation is calculated based on a plurality of ninth contact force values; If the first standard deviation, the second standard deviation, and the third standard deviation are all less than the first threshold, the second terminal is determined to be in a non-interactive state.
6. The assembly method according to claim 1, characterized in that, The second terminal is generated according to the following steps: Receive configuration information from the user for the second terminal, the configuration information including the shape of the second terminal, the number of interactive areas of the second terminal, the position of the interactive areas of the second terminal, and the function of the interactive areas of the second terminal; A 3D printing operation is performed based on the configuration information, and the 3D printing operation is used to generate the second terminal.
7. An assembly device, characterized in that, The device is applied to a first terminal, which is communicatively connected to a robot, and includes: The monitoring module is used to display at least two candidate sub-tasks configured for the preset task each time the robot is detected to have performed a preset task during the assembly process of the robot. The processing module is used to respond to a user's trigger operation on a second terminal and select one of the at least two candidate subtasks as the target task. The second terminal is generated according to the user's needs and is communicatively connected to the first terminal. The control module is used to control the robot to perform the assembly operation corresponding to the target task; The processing module includes a first processing submodule, a first calculation submodule, a first determination submodule, and a selection submodule; The first processing submodule is configured to respond to a user's trigger operation on the second terminal and obtain a first parameter generated by the trigger operation on the second terminal. The first parameter includes a first contact force value in a first direction, a second contact force value in a second direction, a third contact force value in a third direction, a first torque value in the first direction, a second torque value in the second direction, and a third torque value in a third direction. The first direction is parallel to the second terminal, the second direction is perpendicular to the second terminal, and the third direction is perpendicular to the first direction and the second direction, respectively. The first calculation submodule is used to obtain the second parameter based on the first parameter and the basic parameter, wherein the basic parameter is a parameter measured when the second terminal is in a non-interactive state; The first determining submodule is used to determine the coordinates of the contact point of the triggering operation on the second terminal according to the second parameter; and to determine the target interaction area in multiple interaction areas on the second terminal according to the coordinates of the contact point. The selection submodule is used to select one candidate subtask as the target task from the at least two candidate subtasks based on the functions configured in the target interaction area.
8. An electronic device, characterized in that, include: Processor and memory storing computer program instructions; When the processor executes the computer program instructions, it implements the assembly method as described in any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions that, when executed by a processor, implement the assembly method as described in any one of claims 1-6.
Citation Information
Patent Citations
Man-machine cooperation fabricated construction management and control system and method based on BIM and Unity model
CN120408777A