Method for controlling industrial robot and industrial robot

Based on voice input to determine the motion mode and parameters of industrial robots, using the predetermined mode and scope of DLL storage to solve the problem of inaccurate voice control in traditional voice control, and achieve more accurate robotic mobile and improved user experience.

CN119365299APending Publication Date: 2025-01-24ABB (SCHWEIZ) AG
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202280097130.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-07-14
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

Traditional voice control methods are inaccurate in controlling the precise movement of industrial robots and have poor user experience.

Method used

By determining the motion mode and motion parameters of the industrial robot based on voice input, and utilizing the predetermined modes and parameter ranges stored in the dynamic link library (DLL) to ensure the validity of the motion parameters, more precise robot movement can be achieved.

Benefits of technology

Improve the accuracy of industrial robots and user experience, ensure the effectiveness of motion parameters, and avoid errors in the movement process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119365299A_ABST
    Figure CN119365299A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a method for controlling an industrial robot, the industrial robot and a computer readable medium. In the method, a motion pattern for the industrial robot is determined based on a first voice input. One or more motion parameters in the determined motion pattern are determined based on the second speech input. And controlling the industrial robot to move in the determined motion mode according to the one or more motion parameters. According to the embodiment of the invention, by firstly determining the motion mode and then determining the motion parameters in the motion mode, more accurate movement of the industrial robot can be realized through voice control, so that the user experience of robot control is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Example embodiments of the present disclosure generally relate to the field of voice control, and more particularly to a method for controlling an industrial robot, an industrial robot, and a computer-readable medium. Background Art

[0002] Speech recognition technology is widely used in industry, home appliances, communications, automotive electronics, medical treatment, home services, consumer electronics and other fields. The combination of speech recognition technology and robot control technology embodies the automation and intelligence of technology, changes the traditional production mode, reduces the labor intensity of workers, improves labor productivity, and promotes the development of traditional technology in the direction of intelligence. However, the traditional voice control of industrial robots is inaccurate for controlling precise movement and has a poor user experience. Therefore, it is hoped to propose a solution for controlling the precise movement of industrial robots based on voice input. Summary of the invention

[0003] Example embodiments of the present disclosure provide a solution for robot control based on voice input.

[0004] In a first aspect, an example embodiment of the present disclosure provides a method for controlling an industrial robot. The method includes: determining a motion mode for the industrial robot based on a first voice input, and determining one or more motion parameters in the determined motion mode based on a second voice input. The method also includes controlling the industrial robot to move in the determined motion mode according to the one or more motion parameters. In this way, by first determining the motion mode and then determining the motion parameters, more precise movement of the industrial robot can be achieved through voice control, thereby improving the user experience of robot control.

[0005] In some embodiments, the step of determining the motion mode may include: determining a mode identifier based on voice recognition of the first voice input, and determining the motion mode based on the mode identifier and a dynamic link library (DLL) encapsulated in the industrial robot. Wherein, the DLL stores a plurality of predetermined modes and a plurality of predetermined parameter ranges for controlling the movement of the industrial robot. In this way, the motion mode is determined using a self-encapsulated library rather than calling a library from a third party. Therefore, the user experience of robot control is further improved by the self-encapsulated and customized library.

[0006] In some embodiments, the step of controlling the industrial robot may include: obtaining a predetermined parameter range corresponding to the determined motion mode from the DLL, determining the validity of one or more motion parameters based on the predetermined parameter range, and in response to determining that the one or more motion parameters are valid, controlling the industrial robot to move according to the one or more motion parameters. In this way, errors in the movement process can be prevented, thereby enabling effective control of the industrial robot.

[0007] In some embodiments, the step of determining the validity of the one or more motion parameters may include: determining whether each of the one or more motion parameters is within a predetermined parameter range, and in response to determining that each of the one or more motion parameters is within the predetermined parameter range, determining that the one or more motion parameters are valid. In this way, by determining that each motion parameter has a corresponding predetermined parameter range, errors can be avoided, thereby improving the efficiency of robot control.

[0008] In some embodiments, the plurality of predetermined modes include at least a joint angle mode and a Cartesian space posture mode, wherein the joint angle mode indicates that the movement of the industrial robot is represented by the angle of the joint, and the Cartesian space posture mode indicates that the movement of the industrial robot is represented by a Cartesian coordinate system. In this way, the movement including single-axis movement and Cartesian space linear movement can be voice-controlled. Therefore, voice control of most industrial robots on the market can be supported.

[0009] In some embodiments, the step of determining the validity of the one or more motion parameters may include: in response to determining that the determined motion mode is a joint angle mode, comparing the number of joints indicated in the one or more motion parameters with the number of joints of the industrial robot; and in response to determining that the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot, determining that the one or more motion parameters are invalid. In this way, it is ensured that a number of parameters corresponding to the actual number of joints of the industrial robot can be provided.

[0010] In some embodiments, the step of determining the validity of the one or more motion parameters may include: in response to determining that the determined motion mode is a Cartesian space gesture mode, determining a sum of squares of quaternion values ​​included in the one or more motion parameters; and in response to determining that the sum of squares is not equal to 1, determining that the one or more motion parameters are invalid. In this way, it is ensured that the motion parameters of the Cartesian space gesture mode can be correctly provided.

[0011] In some embodiments, the step of controlling the industrial robot may include: receiving a real-time position from a sensor of the industrial robot, and controlling the movement of the industrial robot according to the real-time position data. In this way, the movement of the industrial robot can be adjusted in real time, and thus high-precision control can be achieved.

[0012] In some embodiments, the motion pattern and the one or more motion parameters are represented in a text format. In this way, the motion pattern and the one or more motion parameters can be converted into a control signal via a user datagram protocol (UDP).

[0013] In some embodiments, the method may further include receiving a first recognition result of the first voice input and a second recognition result of the second voice input from the industrial personal computer. The step of determining the motion pattern includes determining the motion pattern based on the first recognition result, and the step of determining one or more motion parameters includes determining one or more motion parameters based on the second recognition result. In this way, speech recognition becomes more accurate and has stronger anti-interference ability in noisy industrial environments.

[0014] In some embodiments, the first recognition result and the second recognition result are obtained by noise reduction. In this way, even in a noisy industrial environment, the voice control of the industrial robot can be more accurate.

[0015] In some embodiments, the step of controlling the industrial robot to move in the determined motion mode according to the one or more motion parameters may include: converting the one or more motion parameters into a control signal, and controlling the industrial robot to move according to the control signal. In this way, the motion parameters can be converted into signals for controlling the movement of the robot.

[0016] In a second aspect, an exemplary embodiment of the present disclosure provides an industrial robot according to an embodiment of the present disclosure. The industrial robot includes a processor and a memory coupled to the processor and including instructions. When executed by the processor, the instructions enable the processor to perform a method for controlling the industrial robot according to an embodiment of the present disclosure.

[0017] In a third aspect, an example embodiment of the present disclosure provides a computer-readable medium having instructions stored thereon. When executed on at least one processor, the instructions cause the at least one processor to perform a method for controlling an industrial robot according to an embodiment of the present disclosure.

[0018] In a fourth aspect, an example embodiment of the present disclosure provides a computer program product implemented on a non-transitory computer-readable medium. The non-transitory computer-readable medium has instructions stored thereon, and the instructions, when executed by a processor, cause the processor to perform a method for controlling an industrial robot according to an embodiment of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The above and other purposes, features and advantages of the example implementations disclosed herein will be more easily understood through the following detailed description with reference to the accompanying drawings. In the accompanying drawings, several example implementations disclosed herein are shown by way of example and not limitation, in which:

[0020] Figure 1 An example environment is shown in which embodiments of the present disclosure may be implemented;

[0021] Figure 2 A schematic flow chart of a method for controlling an industrial robot according to an embodiment of the present disclosure is shown;

[0022] Figure 3 A schematic diagram showing the architecture of a system for controlling an industrial robot according to an embodiment of the present disclosure;

[0023] Figure 4 A schematic diagram showing a process for processing voice input according to an embodiment of the present disclosure is shown;

[0024] Figure 5 A schematic diagram showing a process for determining the validity of one or more motion parameters according to some embodiments of the present disclosure;

[0025] Figure 6 A schematic diagram showing a process for determining the validity of one or more motion parameters according to some embodiments of the present disclosure;

[0026] Figure 7 A schematic diagram showing a process for controlling movement based on one or more motion parameters according to an embodiment of the present disclosure;

[0027] Figure 8 A schematic diagram showing an architecture for communicating between a UDP server and a voice robot interface module via a data stream communication interface according to an embodiment of the present disclosure; and

[0028] Fig.9A An example of movement of an industrial robot in a Cartesian space gesture mode according to an embodiment of the present disclosure is shown;

[0029] Fig. 9B An example of showing movement of an industrial robot in a joint angle mode according to an embodiment of the present disclosure; and

[0030] Fig.10 A schematic diagram of a device for controlling an industrial robot according to an embodiment of the present disclosure is shown.

[0031] Throughout the drawings, the same or similar reference numbers are used to refer to the same or similar elements. DETAILED DESCRIPTION

[0032] The principles of the present disclosure will now be described with reference to several example embodiments shown in the accompanying drawings. Although example embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that these embodiments are described only to facilitate those skilled in the art to better understand and thereby implement the present disclosure, rather than to limit the scope of the present disclosure in any way.

[0033] Generally, voice control is rarely used in industrial robots. There are some studies on controlling industrial robots through voice control. In such studies, the robot is controlled based on simple voice inputs (e.g., "stop"). However, there is no research on controlling precise and customized movements of industrial robots based on voice inputs.

[0034] In order to at least partially solve the above and other potential problems, a new method for controlling an industrial robot according to an embodiment of the present disclosure is provided. Typically, a motion mode for the industrial robot is determined based on a first voice input. One or more motion parameters in the determined motion mode are determined based on a second voice input. The industrial robot is controlled to move in the determined motion mode according to the one or more motion parameters. Therefore, by first determining the motion mode and then determining the motion parameters, more precise movement of the industrial robot can be achieved through voice control, thereby improving the user experience of robot control.

[0035] Figure 1 An example environment 100 is shown in which embodiments of the present disclosure may be implemented. The example environment 100 includes a computing device 110 and an industrial robot 120 (hereinafter referred to as a "robot"). A user 105 may control the industrial robot 120 using voice input (such as voice input 130-1 and voice input 130-N) via an audio input device (e.g., a microphone, a speaker that may receive voice signals, etc.). Voice input 130-1 and voice input 130-N may be collectively referred to as "voice input 130" or individually as "voice input 130", where N is an integer greater than 1. Voice input 130-1 and 130-N may be input simultaneously or separately.

[0036] The industrial robot 120 can be a single-axis robot or a multi-axis robot. For example, there are two to seven articulated joints in a multi-axis robot. Each joint can move within a predetermined range. The computing device 110 can be a personal computer, a laptop computer, a desktop computer, or a smart phone. In an embodiment of the present disclosure, the computing device 110 can be an industrial personal computer (IPC) physically close to the industrial robot 120. The IPC is a professional computer designed for industrial production control, which is used to monitor and control mechanical equipment, production processes, data parameters, etc. in industrial production processes. In some embodiments, the computing device 110 can be omitted, and the voice input from the user 105 can be directly input to the industrial robot 120.

[0037] In some embodiments, the industrial robot 120 may receive voice input 130 directly from the user 105 (not shown). In this case, the audio input device is configured in the industrial robot 120. In some embodiments, the audio input device is physically separated from both the computing device 110 and the industrial robot 120, and is communicatively connected to the computing device 110 or the industrial robot 120.

[0038] Will refer to Figure 2 To briefly describe the present disclosure. Figure 2 A schematic flow chart of a method 200 for controlling an industrial robot 120 according to an embodiment of the present disclosure is shown. At 210, a motion pattern for the industrial robot 120 is determined based on a first voice input (e.g., 130-1). At 220, one or more motion parameters in the determined motion pattern are determined based on a second voice input (e.g., 130-N). At 230, the industrial robot 120 is controlled to move in the motion pattern determined at 210 according to the one or more motion parameters determined at 220. In this way, by first determining the motion pattern and then determining the motion parameters, more precise movement of the industrial robot can be achieved through voice control, thereby improving the user experience of robot control.

[0039] The movement of the industrial robot 120 is controlled in motion modes, such as joint angle mode and Cartesian space posture mode. The joint angle mode indicates that the movement of the industrial robot is represented by the angle of the joint. For example, for a 3-axis robot, the movement in the joint angle mode can be represented as follows: first joint: stay, second joint: 35°, third joint: 90°.

[0040] The Cartesian space attitude mode indicates that the movement of the industrial robot is represented by a Cartesian coordinate system. For example, the movement in the Cartesian space attitude mode can be represented as follows: X=0mm, Y=6mm, Z=2mm, Q1=0.653, Q2=-0.271, Q3=0.653, Q4=-0.271. X, Y and Z represent translations in three directions in the Cartesian coordinate system. Q1~Q4 are four quaternions that together represent the rotation of the robot in the Cartesian coordinate system. The sum of the squares of the four quaternion values ​​should be equal to 1. It should be noted that the above values ​​are exemplary and are not intended to limit the scope of the present disclosure.

[0041] Figure 3 1 shows a schematic diagram of the architecture of a system 300 for controlling an industrial robot 120 according to an embodiment of the present disclosure. The system 300 may include a speech processing module 310, a speech robot interface module 320, and a robot motion control module 330. The speech input 130 may be processed by the speech processing module 310. This will be referred to below. Figure 4 Have a discussion.

[0042] In some embodiments, the audio input device and the speech processing module 310 may be configured in the computing device 110. The speech robot interface module 320 and the robot motion control module 330 may be configured in the industrial robot 120.

[0043] Alternatively, the speech processing module 310 can also be configured in the industrial robot 120. In some embodiments, the speech processing module 310 is configured in a cloud computing device (not shown). In some embodiments, the speech processing module 310, the speech robot interface module 320 and the robot motion control module 330 are all configured in the computing device 110.

[0044] Figure 4 FIG. 1 is a schematic diagram showing a process of processing a speech input 130 by a speech processing module 310 according to an embodiment of the present disclosure. Figure 4 As shown, the voice processing module 310 performs sound conversion and noise reduction 410 on the voice input 130 (e.g., 130-1 and 130-N). Then, natural language processing, feature extraction 420, and voice decoding 430 are performed on the voice input 130 using an acoustic model 450, a language model 460, and a dictionary 470. The successfully recognized voice input is then converted into information in a text format and output at 440. Multiple voice inputs 130 can be trained and self-learned, and then stored in an acoustic, language, and dictionary model library (ALDML). The ALDML includes an acoustic model 450, a language model 460, and a dictionary 470. In this way, the voice input can be processed into a recognition result in text information.

[0045] Return now Figure 3 The voice robot interface module 320 can determine a motion pattern and one or more motion parameters for movement of the industrial robot 120 based on the processed voice input 130. This will be referred to below. Figure 2 Discuss in detail.

[0046] In some embodiments, the user 105 may be required to input voice input 130-1 to indicate the motion mode of the industrial robot 120 operation. For example, a first message may be prompted to the user 105 through a display or a speaker. The first message may be a sentence, such as "Please select a motion mode" or "Please provide a motion code", etc. In response, the user 105 may answer, for example, "joint angle mode", "Cartesian space posture mode", "mode 1", "mode 2", "first mode", or "second mode" as the voice input 130-1.

[0047] Once the motion mode is determined, the user 105 is asked to enter additional voice input 130-N to provide one or more motion parameters in the determined motion mode. For example, a second message may be prompted to the user 105 via a display or a speaker. The second message may be a sentence, such as "Please give parameters" or "Please provide parameters", etc. In response, the user 105 may answer, for example, "First joint: stay, second joint: 35°, third joint: 90°", "First joint: 80°, second joint: 45°, third joint: 10°, fourth joint: 25°, fifth joint: stay, sixth joint: 75°", or "X=0mm, Y=6mm, Z=0mm, Q1=1, Q2=0, Q3=0, Q4=0", etc., as voice input 130-N. It should be noted that the above exemplary voice input 130-1 and voice input 130-N are for illustrative purposes only and are not intended to limit the scope of the present disclosure. In this way, the voice input 130 may be input to the industrial robot 120 according to one or more messages, so that the computing resources of the industrial robot 120 may be balanced to avoid inputting too much voice input in a busy state.

[0048] In some embodiments, after determining the motion mode, a mode identifier (e.g., "mode 1" or "mode 2", etc.) can be determined by the voice robot interface module 320 based on voice recognition of the voice input 130-1. The motion mode is determined by the voice robot interface module 320 based on the mode identifier and a dynamic link library (DLL) encapsulated in the industrial robot 120. The DLL stores a plurality of predetermined modes and a plurality of predetermined parameter ranges for controlling the movement of the industrial robot 120. The predetermined modes include at least a joint angle mode and a Cartesian space posture mode. In some embodiments, the motion mode can be determined by matching the mode identifier with one of the plurality of predetermined modes. Voice recognition can be performed by the voice processing module 310, as shown in reference Figure 4 In this way, the movement pattern is input into the industrial robot 120 through natural voice input, so the form of human-machine information exchange becomes more convenient and natural.

[0049] In some embodiments, the voice processing module 310 is configured in an IPC near the industrial robot 120, so that the voice robot interface module 320 can receive the first recognition result of the first voice input 130-1 and the second recognition result of the second voice input 130-N from the IPC. In this case, the motion mode can be determined based on the first recognition result, and one or more motion parameters can be determined based on the second recognition result. In this way, voice recognition becomes more accurate and has stronger anti-interference ability in a noisy industrial environment.

[0050] In some embodiments, the validity of one or more motion parameters needs to be determined. In this case, a predetermined parameter range corresponding to the determined motion mode can be obtained from the DLL. The validity of one or more motion parameters can be determined based on the obtained predetermined parameter range. If one or more motion parameters are valid, the industrial robot can be controlled to move according to the one or more motion parameters. Otherwise, the determined one or more motion parameters need to be discarded, and the user can be requested to enter a new voice input for the motion parameters. In this way, errors in the movement process can be prevented, thereby enabling more efficient control of the industrial robot.

[0051] In some embodiments, the validity of one or more motion parameters can be determined by determining whether each of the one or more motion parameters is within a predetermined parameter range. If so, the one or more motion parameters are valid. The predetermined parameter range can be a position limit range that limits the possible positions to which the industrial robot can move. For example, in the case of controlling the industrial robot 120 in a joint angle mode, the maximum angle that the first joint of the industrial robot 120 can move is 150°. If the motion parameter of the first joint is 160°, the motion parameter is invalid. Therefore, it can be determined that one or more motion parameters are valid. In this way, damage to the industrial robot caused by an accident can be reduced.

[0052] In some embodiments, the validity of one or more motion parameters may also be determined based on the determined motion pattern. Figure 5 A schematic diagram of a process 500 for determining the validity of one or more motion parameters is shown, according to some embodiments of the present disclosure. Fig.9A An example of movement of an industrial robot in a Cartesian space gesture mode according to an embodiment of the present disclosure is shown.

[0053] Reference now Figure 5 , it can be first determined at 511 whether the determined motion mode is a Cartesian space attitude mode. If the determined motion mode is a Cartesian space attitude mode, then at 512, the validity of one or more motion parameters can be further determined by determining whether the sum of the squares of the quaternion values ​​included in the one or more motion parameters is equal to 1. If the sum of the squares is not equal to 1, it is determined that one or more motion parameters are invalid. Then process 500 exits abnormally at 514. Otherwise, process 500 proceeds to box 513 to set X, Y, Z and four quaternions Q1~Q4. In this way, it is ensured that the motion parameters for the Cartesian space attitude mode can be correctly provided.

[0054] If it is determined at 511 that the determined motion mode is not a Cartesian space posture mode, the process 500 proceeds to box 521. At 521, it is determined whether the determined motion mode is a joint angle mode. If the determined motion mode is a joint angle mode, then at 522, the validity of one or more motion parameters can be further determined by determining whether the number of joints indicated in one or more motion parameters exceeds the number of joints of the industrial robot 120. If the number of joints indicated in one or more motion parameters exceeds the number of joints of the industrial robot, it is determined that one or more motion parameters are invalid. Then the process 500 exits abnormally at 524. Otherwise, the process 500 proceeds to box 523 to set the joint angle. In this way, it is ensured that multiple parameters corresponding to the actual number of joints can be provided.

[0055] Alternatively, it may be first determined at 521 whether the determined motion pattern is a joint angle pattern. Figure 6 A schematic diagram of a process 600 for determining the validity of one or more motion parameters according to some embodiments of the present disclosure is shown. If the determined motion mode is a joint angle mode, then at 522, the validity of the one or more motion parameters can be further determined by determining whether the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot 120. If the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot, it is determined that the one or more motion parameters are invalid. The process 600 then exits abnormally at 524. Otherwise, the process 600 proceeds to box 523 to set the joint angle.

[0056] If it is determined at 521 that the determined motion mode is not a joint angle mode, the process 600 proceeds to box 511. At 511, it is determined whether the determined motion mode is a Cartesian space posture mode. If the determined motion mode is a Cartesian space posture mode, then at 512, the validity of one or more motion parameters can be further determined by determining whether the sum of the squares of the quaternion values ​​included in the one or more motion parameters is equal to 1. If the sum of the squares is not equal to 1, it is determined that one or more motion parameters are invalid. The process 600 then exits abnormally at 514. Otherwise, the process 600 proceeds to box 513 to set X, Y, Z and four quaternions Q1~Q4. The values ​​of the four quaternions are exemplary only and are not intended to limit the scope of the present disclosure.

[0057] Now return to Figure 3 The robot motion control module 330 can control the industrial robot 120 to move in a determined motion pattern according to one or more motion parameters. Figure 7 and Figure 8 Discuss in detail. Figure 7FIG. 7 is a schematic diagram of a process 700 for controlling movement based on one or more motion parameters by the robot motion control module 330 according to an embodiment of the present disclosure. Figure 7 As shown, one or more effective motion parameters from the voice robot interface module 320 are transmitted to an external position guidance engine (not shown) to drive the industrial robot 120. The real-time position of the industrial robot's sensor is received and fed back to the external position guidance engine. The industrial robot is controlled to move according to the real-time position data. At 710, the one or more effective motion parameters are input from the voice robot interface module 320 to the data stream communication interface 820 (such as Figure 8 At 720, one or more motion parameters are converted into control signals by the UDP server 810, such as Figure 8 At 730, the control signal is used for robot bottom motion control to control the movement of the robot 120 at 740. At 750, the real-time position of the sensor from the industrial robot is fed back to the robot motion control module 330. In this way, the movement of the industrial robot can be adjusted in real time, and thus high-precision control can be achieved.

[0058] Figure 8 A schematic diagram of an architecture 800 for communicating between a UDP server and a voice robot interface module 320 via a data stream communication interface according to an embodiment of the present disclosure is shown. In an embodiment of the present disclosure, the voice robot interface module 320 acts as a UDP client that communicates with a UDP server 810 via a data stream communication interface 820. In the data stream communication interface 820, a Protocol*.proto file is compiled into a C# protocolfile*.cs file via a ProtofC compiler.

[0059] Will refer to Fig.9A and Fig. 9B To describe exemplary movements of the robot. Fig.9A An example of movement 900 of an industrial robot in a Cartesian space gesture mode based on voice control according to an embodiment of the present disclosure is shown. According to method 200, a set of motion parameters in a Cartesian space gesture mode is determined from voice input. Fig.9A The set of motion parameters shown indicates that the joint should move 6 mm in the Y direction relative to the target object without rotation.

[0060] Fig. 9B An example of a movement 950 of an industrial robot in a joint angle mode based on voice control according to an embodiment of the present disclosure is shown. A set of motion parameters in a joint angle mode is determined from a voice input according to method 200. Fig. 9BThe illustrated set of motion parameters indicates that the first joint does not move, the second joint moves 35°, and the third joint moves 90°. It should be noted that the values ​​of the motion parameters are merely exemplary and are not intended to limit the scope of the present disclosure.

[0061] The previous paragraphs have described the detailed steps of the method 200 in some embodiments of the present disclosure. The method 200 may be implemented by a corresponding device in, for example, an industrial robot. Fig.10 A schematic diagram of an apparatus 1000 for controlling an industrial robot according to an embodiment of the present disclosure is shown. The apparatus 1000 includes a processor 1010 coupled to a memory 1020, and the memory 1020 includes instructions 1022, which implement the method according to the embodiment of the present application when executed by the processor 1010.

[0062] In some embodiments of the device 1000, determining the motion mode includes: determining a mode identifier based on voice recognition of a first voice input; and determining the motion mode based on the mode identifier and a dynamic link library (DLL) encapsulated in the industrial robot, the DLL storing multiple predetermined modes and multiple predetermined parameter ranges for controlling the movement of the industrial robot.

[0063] In some embodiments of the device 1000, controlling the industrial robot includes: obtaining a predetermined parameter range corresponding to the determined motion mode from the DLL; determining the validity of one or more motion parameters based on the predetermined parameter range; and in response to determining that the one or more motion parameters are valid, controlling the industrial robot to move according to the one or more motion parameters.

[0064] In some embodiments of device 1000, determining the validity of the one or more motion parameters includes: determining whether each of the one or more motion parameters is within a predetermined parameter range; and in response to determining that each of the one or more motion parameters is within the predetermined parameter range, determining that the one or more motion parameters are valid.

[0065] In some embodiments of the device 1000, the plurality of predetermined modes include at least a joint angle mode and a Cartesian space posture mode, wherein the joint angle mode indicates that the movement of the industrial robot is represented by the angles of the joints, and the Cartesian space posture mode indicates that the movement of the industrial robot is represented by a Cartesian coordinate system.

[0066] In some embodiments of device 1000, determining the validity of the one or more motion parameters includes: in response to determining that the determined motion mode is a joint angle mode, comparing the number of joints indicated in the one or more motion parameters with the number of joints of the industrial robot; and in response to determining that the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot, determining that the one or more motion parameters are invalid.

[0067] In some embodiments of device 1000, determining the validity of the one or more motion parameters includes: in response to determining that the determined motion mode is a Cartesian space posture mode, determining the sum of the squares of the quaternion values ​​included in the one or more motion parameters; and in response to determining that the sum of the squares is not equal to 1, determining that the one or more motion parameters are invalid.

[0068] In some embodiments of the apparatus 1000 , controlling the industrial robot includes: receiving a real-time position from a sensor of the industrial robot; and controlling the movement of the industrial robot according to the real-time position data.

[0069] In some embodiments regarding apparatus 1000, the motion pattern and the one or more motion parameters are represented in a text format.

[0070] In some embodiments of device 1000, the method also includes: receiving a first recognition result of a first voice input and a second recognition result of a second voice input from an industrial personal computer, wherein determining the motion pattern includes determining the motion pattern based on the first recognition result, and wherein determining one or more motion parameters includes determining one or more motion parameters based on the second recognition result.

[0071] In some embodiments of the apparatus 1000 , the first recognition result and the second recognition result are obtained by noise reduction.

[0072] In some embodiments of the apparatus 1000 , controlling the industrial robot to move in the determined motion pattern according to the one or more motion parameters includes: converting the one or more motion parameters into a control signal; and controlling the industrial robot to move according to the control signal.

[0073] In some embodiments of the present disclosure, a computer-readable medium for controlling an industrial robot is provided. The computer-readable medium has instructions stored thereon, and when these instructions are executed on at least one processor, the at least one processor may cause the at least one processor to perform the method for controlling an industrial robot as described in the above paragraphs.

[0074] In some embodiments of the computer-readable medium, determining the motion mode includes: determining a mode identifier based on voice recognition of a first voice input; and determining the motion mode based on the mode identifier and a dynamic link library (DLL) encapsulated in the industrial robot, the DLL storing multiple predetermined modes and multiple predetermined parameter ranges for controlling the movement of the industrial robot.

[0075] In some embodiments of the computer-readable medium, controlling the industrial robot includes: obtaining a predetermined parameter range corresponding to the determined motion mode from the DLL; determining the validity of one or more motion parameters based on the predetermined parameter range; and in response to determining that the one or more motion parameters are valid, controlling the industrial robot to move according to the one or more motion parameters.

[0076] In some embodiments of the computer-readable medium, determining the validity of the one or more motion parameters includes: determining whether each of the one or more motion parameters is within a predetermined parameter range; and in response to determining that each of the one or more motion parameters is within the predetermined parameter range, determining that the one or more motion parameters are valid.

[0077] In some embodiments regarding computer-readable media, the plurality of predetermined modes include at least a joint angle mode and a Cartesian space posture mode, wherein the joint angle mode indicates that the movement of the industrial robot is represented by the angles of the joints, and the Cartesian space posture mode indicates that the movement of the industrial robot is represented by a Cartesian coordinate system.

[0078] In some embodiments of the computer-readable medium, determining the validity of the one or more motion parameters includes: in response to determining that the determined motion mode is a joint angle mode, comparing the number of joints indicated in the one or more motion parameters with the number of joints of the industrial robot; and in response to determining that the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot, determining that the one or more motion parameters are invalid.

[0079] In some embodiments of the computer-readable medium, determining the validity of the one or more motion parameters includes: in response to determining that the determined motion mode is a Cartesian space posture mode, determining the sum of the squares of the quaternion values ​​included in the one or more motion parameters; and in response to determining that the sum of the squares is not equal to 1, determining that the one or more motion parameters are invalid.

[0080] In some embodiments regarding the computer-readable medium, controlling the industrial robot includes: receiving a real-time position from a sensor of the industrial robot; and controlling the movement of the industrial robot according to the real-time position data.

[0081] In some embodiments relating to a computer-readable medium, the motion pattern and the one or more motion parameters are represented in a text format.

[0082] In some embodiments of the computer-readable medium, the method further comprises receiving a first recognition result of a first voice input and a second recognition result of a second voice input from an industrial personal computer, wherein determining the motion pattern comprises determining the motion pattern based on the first recognition result, and wherein determining one or more motion parameters comprises determining one or more motion parameters based on the second recognition result.

[0083] In some embodiments regarding the computer-readable medium, the first recognition result and the second recognition result are obtained by noise reduction.

[0084] In some embodiments of the computer-readable medium, controlling the industrial robot to move in the determined motion pattern according to the one or more motion parameters includes: converting the one or more motion parameters into a control signal; and controlling the industrial robot to move according to the control signal.

[0085] In general, various embodiments of the present disclosure may be implemented in hardware or dedicated circuits, software, logic, or any combination thereof. Some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor, or other computing device. Although various aspects of the embodiments of the present disclosure are shown and described as block diagrams, flow charts, or using some other graphical representations, it will be understood that the devices, systems, techniques, or methods described herein may be implemented in hardware, software, firmware, dedicated circuits or logic, general hardware or controllers, or other computing devices, or some combination thereof, as non-limiting examples.

[0086] The present disclosure also provides at least one computer program product tangibly stored on a non-transitory computer-readable storage medium. The computer program product includes computer executable instructions executed in a device on a target real or virtual processor, such as computer executable instructions included in a program module, with reference to Figure 2 The process or method described. In general, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The functions of program modules can be ideally combined or separated between program modules in various embodiments. The machine executable instructions of program modules can be executed in local or distributed devices. In distributed devices, program modules can be located in local and remote storage media.

[0087] The program code for executing the disclosed method can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device so that the program code makes the function / operation specified in the flow chart and / or the block diagram be realized when the processor or controller executes it. The program code can be executed completely on the machine, partly on the machine, partly on the machine and partly on a remote machine, or completely on a remote machine or server as an independent software package.

[0088] The above program code can be implemented on a machine-readable medium, which can be any tangible medium that can contain or store a program used by or in conjunction with an instruction execution system, device or equipment. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium can include, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared or semiconductor system, device or device, or any suitable combination of the foregoing. More specific examples of machine-readable storage media will include an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0089] In addition, although operations are described in a specific order, this should not be understood as requiring to perform these operations in the specific order shown or in sequence, or to perform all the operations shown, to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these details should not be interpreted as limitations on the scope of the present disclosure, but should be interpreted as descriptions of features peculiar to a particular embodiment. Certain features described in the context of a separate embodiment may also be implemented in combination in a single embodiment. On the other hand, the various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable sub-combination.

[0090] Although the subject matter has been described in language specific to structural features and / or methodological acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims

1. A method (200) for controlling an industrial robot (120), comprising: determining (210) a motion pattern for the industrial robot (120) based on a first speech input; determining (220) one or more movement parameters of the determined movement pattern based on the second speech input; as well as The industrial robot (120) is controlled (230) to move in the determined motion pattern according to the one or more motion parameters.

2. The method (200) of claim 1, wherein determining (210) the motion pattern comprises: determining a mode identifier based on speech recognition of the first speech input; as well as The motion mode is determined based on the mode identifier and a dynamic link library (DLL) packaged in the industrial robot (120), the DLL storing a plurality of predetermined modes and a plurality of predetermined parameter ranges for controlling the movement of the industrial robot (120).

3. The method (200) of claim 2, wherein controlling (230) the movement of the industrial robot (120) comprises: obtaining, from the DLL, a predetermined parameter range corresponding to the determined motion mode; determining validity of the one or more motion parameters based on the predetermined parameter range; as well as In response to determining that the one or more motion parameters are valid, the industrial robot (120) is controlled to move according to the one or more motion parameters.

4. The method (200) of claim 3, wherein determining the validity of the one or more motion parameters comprises: determining whether each of the one or more motion parameters is within the predetermined parameter range; as well as In response to determining that each of the one or more motion parameters is within the predetermined parameter range, the one or more motion parameters are determined to be valid.

5. The method (200) according to claim 3, wherein the plurality of predetermined modes include at least a joint angle mode and a Cartesian space posture mode, the joint angle mode indicating that the movement of the industrial robot (120) is represented by the angle of the joint, and the Cartesian space posture mode indicating that the movement of the industrial robot (120) is represented by a Cartesian coordinate system.

6. The method (200) of claim 5, wherein determining the validity of the one or more motion parameters comprises: In response to determining that the determined motion pattern is the joint angle pattern, comparing the number of joints indicated in the one or more motion parameters with the number of joints of the industrial robot (120); as well as In response to determining that the number of joints indicated in the one or more motion parameters exceeds the number of joints of the industrial robot (120), the one or more motion parameters are determined to be invalid.

7. The method (200) of claim 5, wherein determining the validity of the one or more motion parameters comprises: In response to determining that the determined motion mode is a Cartesian space gesture mode, determining a sum of squares of quaternion values ​​included in the one or more motion parameters; as well as In response to determining that the sum of squares is not equal to 1, the one or more motion parameters are determined to be invalid.

8. The method (200) of claim 1, wherein controlling (230) the movement of the industrial robot (120) comprises: Receiving a real-time position from a sensor of the industrial robot (120); as well as The movement of the industrial robot (120) is controlled according to the real-time position data.

9. The method (200) of claim 1, wherein the motion pattern and the one or more motion parameters are represented in a text format.

10. The method (200) of claim 1, further comprising: receiving a first recognition result of the first voice input and a second recognition result of the second voice input from an industrial personal computer (110), wherein determining the motion pattern comprises determining the motion pattern based on the first recognition result, and Determining the one or more motion parameters includes determining the one or more motion parameters based on the second recognition result.

11. The method (200) according to claim 10, wherein the first recognition result and the second recognition result are obtained by noise reduction.

12. The method (200) of claim 1, wherein controlling the industrial robot (120) to move comprises: converting the one or more motion parameters into a control signal; as well as The industrial robot (120) is controlled to move according to the control signal.

13. An industrial robot (120), comprising: processor; as well as A memory coupled to the processor and comprising instructions which, when executed by the processor, cause the processor to perform a method (200) according to any one of claims 1 to 12.

14. A computer-readable medium having stored thereon instructions which, when executed by a processor, cause the processor to perform the method (200) according to any one of claims 1 to 12.

15. A computer program product embodied on a non-transitory computer readable medium having instructions stored thereon which, when executed by a processor, cause the processor to perform the method (200) according to any one of claims 1 to 12.

Citation Information

Cited By

  • Intelligent voice interaction and motion control method and system

    CN122637780A

  • Intelligent voice interaction and motion control method and system

    CN122637780B