Method and mobile device of teaching industrial robot
A mobile device with sensors allows wireless teaching of industrial robots by synchronizing coordinate systems, addressing the inconvenience and cost of conventional teaching pendants, facilitating efficient multi-robot operation.
Patent Information
- Application Number
- PCT/CN2024/079417
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-29
- Publication Date
- 2025-09-04
AI Technical Summary
Conventional teaching pendants for industrial robots are costly to replace and inconvenient for multi-robot operation due to wired connections.
A mobile device with built-in sensors measures motion and orientation to allow users to teach industrial robots wirelessly by moving or rotating the device, synchronizing coordinate systems, and transmitting instructions to the robot controller.
Enables convenient and cost-effective teaching of multiple robots with reduced time and cost, using a single mobile device for wireless operation.
Smart Images

Figure CN2024079417_04092025_PF_FP_ABST
Abstract
Description
METHOD AND MOBILE DEVICE OF TEACHING INDUSTRIAL ROBOTFIELD
[0001] Example embodiments of the present disclosure generally relate to the field of industrial robot, and more particularly, to a method and a mobile device of teaching an industrial robot.BACKGROUND
[0002] In the field of industrial robot, a teaching pendant acts an interface between an industrial robot and the user and thus plays a vital role in the teaching and controlling of the industrial robot. Typically, every robot system is equipped with a teaching pendant. However, if the teaching pendant fails, the cost of replacing it with a new one will be high. Additionally, since the teaching pendant has a wired connection to the robot controller of the industrial robots, using one teaching pendant to operate multiple industrial robots is quite inconvenient.SUMMARY
[0003] In general, example embodiments of the present disclosure provide a method and a mobile device of teaching an industrial robot.
[0004] In a first aspect, there is provided a method of teaching an industrial robot. The method comprising: receiving an input from a user, wherein the input indicates a target coordinate system selected by the user; synchronizing the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with a mobile device; and transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor to teach the industrial robot in response to receive a controlling information from a sensor inbuilt in the mobile device when the mobile device is moved by the user.
[0005] According to example embodiments, the users can conveniently teach the industrial robot by moving or rotating the mobile device.
[0006] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is moved linearly by the user, transmitting an instruction to cause the industrial robot to move linearly.
[0007] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rolled about its rolling axis by the user, transmitting an instruction to cause a tool of the industrial robot to rotate about its robot axis, wherein the rolling axis is parallel to a main surface of the moving device.
[0008] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rotated about its vertical axis by the user, transmitting an instruction to cause the industrial robot to rotate about its joint axis, wherein the vertical axis is normal to a main surface of the moving device.
[0009] In some example embodiments, the target coordinate system is selected between a base coordinate system and a tool coordinate system, wherein the base coordinate system is established on a base to which the industrial robot is mounted and the tool coordinate system is established on a tool mounted on the industrial robot.
[0010] In some example embodiments, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the method further comprising determining whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot.
[0011] In some example embodiments, synchronizing the target coordinate system to a device coordinate system continuously comprising using a camera module of the mobile device to allow the user to see the industrial robot via the camera module to synchronize the target coordinate system to the device coordinate system in real.
[0012] In a second aspect, there is provided a mobile device of teaching an industrial robot. The mobile device comprises: a receiving module configured to receive an input from a user, wherein the input indicates a target coordinate system selected by the user; a synchronizing module configured to synchronize the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with the mobile device; and a transmitting module configured to transmit an instruction to a robot controller of the industrial robot based on the controlling information from the sensor to teach the industrial robot in response to receive a controlling information from a sensor inbuilt in the mobile device when the mobile device is moved by the user.
[0013] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is moved linearly by the user, transmitting an instruction to cause the industrial robot to move linearly.
[0014] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rolled about its rolling axis by the user, transmitting an instruction to cause a tool of the industrial robot to rotate about its robot axis, wherein the rolling axis is parallel to a main surface of the moving device.
[0015] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rotated about its vertical axis by the user, transmitting an instruction to cause the industrial robot to rotate about its joint axis, wherein the vertical axis is normal to a main surface of the moving device.
[0016] In some example embodiments, the target coordinate system is selected between a base coordinate system and a tool coordinate system, wherein the base coordinate system is established on a base to which the industrial robot is mounted and the tool coordinate system is established on a tool mounted on the industrial robot.
[0017] In some example embodiments, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the mobile device is further configured to determine whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot.
[0018] In some example embodiments, synchronizing the target coordinate system to a device coordinate system continuously comprising using a camera module of the mobile device to allow the user to see the industrial robot via the camera module to synchronize the target coordinate system to the device coordinate system in real.BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Through the following detailed description with reference to the accompanying drawings, the above and other objectives, features and advantages of the example embodiments disclosed herein will become more comprehensible. In the drawings, several example embodiments disclosed herein will be illustrated in an exemplary and in a non-limiting manner, wherein:
[0020] Fig. 1 illustrates a schematic diagram of a robotic system in accordance with an example embodiment of the present disclosure.
[0021] Fig. 2 illustrates a method of teaching an industrial robot in accordance with an example embodiment of the present disclosure.
[0022] Fig. 3 illustrates a graphical user interface displayed on the mobile device that allows the user to select the target coordinate system in accordance with an example embodiment of the present disclosure.
[0023] Fig. 4 illustrates different scenarios in which the base coordinate system is synchronized to the device coordinate system in accordance with an example embodiment of the present disclosure.
[0024] Fig. 5 illustrates a graphical user interface displayed on the mobile device that allows the user to select the moving mode of driving the industrial robot in accordance with an example embodiment of the present disclosure.
[0025] Fig. 6 illustrates different scenarios in which the industrial robot is driven by the user via the mobile device under the base coordinate system in accordance with an example embodiment of the present disclosure.
[0026] Fig. 7 illustrates different scenarios in which the tool coordinate system is synchronized to the device coordinate system in accordance with an example embodiment of the present disclosure.
[0027] Fig. 8 illustrates different scenarios in which the industrial robot is driven by the user via the mobile device under the tool coordinate system in accordance with an example embodiment of the present disclosure.
[0028] Fig. 9 is a schematic diagram illustrating a device that may be used to implement embodiments of the present disclosure.
[0029] Throughout the drawings, the same or similar reference numerals represent the same or similar element.DETAILED DESCRIPTION
[0030] Principles of the present disclosure will now be described with reference to some example embodiments. It is to be understood that these embodiments are described only for the purpose of illustration and to help those skilled in the art to understand and implement the present disclosure, without suggesting any limitation as to the scope of the disclosure. The disclosure described herein can be implemented in various manners other than the ones described below.
[0031] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.
[0032] References in the present disclosure to “one embodiment, ” “an embodiment, ” “an example embodiment, ” and the like indicate that the embodiment described may include a particular feature, structure, or characteristic, but it is not necessary that every embodiment includes the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to apply such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
[0033] It should be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and / or” includes any and all combinations of one or more of the listed terms.
[0034] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments. As used herein, the singular forms “a” , “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” , “comprising” , “has” , “having” , “includes” and / or “including” , when used herein, specify the presence of stated features, elements, and / or components etc., but do not preclude the presence or addition of one or more other features, elements, components and / or combinations thereof.
[0035] As described above, in the conventional approaches of teaching the industrial robots, the teaching process is inconvenient and costly. At least to address the problem existed in the conventional approaches, the present disclosure proposes a solution by using the built-in sensors of a mobile device that measure motion and orientation. Within the mobile device such as a tablet, these sensors are capable of providing raw data with high precision and accuracy, and are useful to monitor the movement or positioning of the mobile device. With these sensors, the user may use the mobile device to move the industrial robot along a desired coordinate system.
[0036] Example embodiments will be described in more detail hereinafter in accordance with Figs. 1-9. With reference to Fig. 1 at first, which illustrates a schematic diagram of a robotic system 10 in accordance with an example embodiment of the present disclosure.
[0037] As illustrated in Fig. 1, the robotic system 10 includes an industrial robot 110, which may be mounted to a fixed base 113. The industrial robot 110 may be designed to control a tool 111 on a mechanical arm 112 to carry out a variety of actions, for example, a machining operation such as milling operation, a grinding operation, etc. The specific types of the actions carried out by the industrial robot 10 are not limited in this regard. As shown in Fig. 1, the industrial robot 110 is communicatively coupled to a robot controller 120 and the robot controller 120 is configured to manipulate the movement of the mechanical arm 112 according to the predetermined instructions. With the help of the robot controller 120, the tool 111 mounted to the mechanical arm 112 may be driven to a desired position to carry out a predetermined action.
[0038] As shown in Fig. 1, a user 140 holds a mobile device 130 to teach the industrial robot 110 to the desired targets so that the positional data of targets are saved in robot controller 120. Afterwards, the user 140 creates a robot program with the taught targets, to drive the industrial robot 110 to move along a desired path. The mobile device 130 may be a tablet computer which may be easily held by the user 140. It is to be understood that, this is only for illustration without suggesting any limitations as to the scope of the subject matter described here. The mobile device 130 may be a mobile phone or a foldable phone, and the specific form thereof are not limited by the above embodiments.
[0039] Fig. 2 illustrates a method 200 of teaching an industrial robot 110 in accordance with an example embodiment of the present disclosure. At block 202, the method 200 comprises receiving an input from a user 140, wherein the input indicates a target coordinate system selected by the user 140.
[0040] Fig. 3 illustrates a graphical user interface displayed on the mobile device 130 that allows the user 140 to select the target coordinate system in accordance with an example embodiment of the present disclosure. As shown in Fig. 3, the target coordinate system may be selected between a base coordinate system and a tool coordinate system. The base coordinate system may be established on the base 113 to which the industrial robot 110 is mounted. The tool coordinate system may be established on the tool 111 mounted onto the mechanical arm 112 of the industrial robot 110. By touching the “Base” button or the “Tool” button though the graphical user interface as shown in Fig. 3, the user 140 may select a desired coordinate system via the mobile device 130 conveniently.
[0041] As shown in Fig. 3, prior to selecting the target coordinate system, the user 140 may also connect the mobile device 130 to the robot controller 120 by inputting the IP address of the robot controller 120. In this way, the mobile device 130 can be connected wirelessly to the robot controller 120, which enables the user 140 to walk freely and flexibly in the site of the industrial robot 110 without being constrained by wire harnesses.
[0042] With reference back to Fig. 2, at block 204, the method 200 includes synchronizing the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with a mobile device 130. As the relative position and orientation in space of the mobile device 130 can be determined by gravity sensors and orientation sensors inbuilt in the mobile device 130, the mobile device 130 can be placed at the same plane as the industrial robot 110, thus synchronizing the base coordinate system of the industrial robot 110 with the device coordinate system of mobile device 130.
[0043] Fig. 4 illustrates different scenarios in which the base coordinate system is synchronized to the device coordinate system in accordance with an example embodiment of the present disclosure. The device coordinate system is established on a main surface of the mobile device 130. The main surface may be defined as the screen of the mobile device 130.
[0044] As shown in Fig. 4 at subfigure (a) , the industrial robot 110 is mounted onto the base 113 and the device coordinate system is synchronized to the base coordinate system, which means the x-axis of the device coordinate system is parallel to the x-axis of the base coordinate system, the y-axis of the device coordinate system is parallel to the y-axis of the base coordinate system and z-axis of the device coordinate system is parallel to the z-axis of the base coordinate system.
[0045] As shown in Fig. 4 at subfigure (b) , the industrial robot 110 is mounted upside down on the base 113 and the device coordinate system is synchronized to the base coordinate system, which means the x-axis of the device coordinate system is parallel to the x-axis of the base coordinate system, the y-axis of the device coordinate system is parallel to the y-axis of the base coordinate system and z-axis of the device coordinate system is parallel to the z-axis of the base coordinate system.
[0046] As shown in Fig. 4 at subfigure (c) , the industrial robot 110 is mounted onto an inclined base 113 with an inclined angle θ and the device coordinate system is synchronized to the base coordinate system, which means the x-axis of the device coordinate system is parallel to the x-axis of the base coordinate system, the y-axis of the device coordinate system is parallel to the y-axis of the base coordinate system and z-axis of the device coordinate system is parallel to the z-axis of the base coordinate system.
[0047] With reference back to Fig. 2, at block 206, the method 200 includes: transmitting an instruction to a robot controller 120 of the industrial robot 110 based on the controlling information from the sensor to teach the industrial robot 110 in response to receive a controlling information from a sensor inbuilt in the mobile device 130 when the mobile device 130 is moved by the user 140.
[0048] To move the industrial robot 110, the user 140 needs to hold the mobile device 130 in both hands.
[0049] In some example embodiments, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the method 200 further include determining whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot. For example, the user 140 may click one volume button of the mobile device 130 which acts as a token for moving the industrial robot 110 in wireless connection. The moving functions are only available after the token is verified. If moving functions are not used after a while, the token will be revoked. In this situation, the user 140 needs to click one volume button to verify the token for a new moving.
[0050] Fig. 5 illustrates a graphical user interface displayed on the mobile device 130 that allows the user 140 to select the moving mode of driving the industrial robot 110 in accordance with an example embodiment of the present disclosure. In some example embodiments, as shown in Fig. 5, the method 200 may further include configuring the settings for moving the industrial robot 110, including motors, moving mode and moving speed. The user 140 may configure these setting conveniently by using the graphic user interface shown in Fig. 5. As shown, the mode may include linear mode, reorient mode and axis mode. In response to the user 140 presses the corresponding button on the mobile device 130, the industrial robot 110 may be controlled to move in respective moving mode.
[0051] Fig. 6 illustrates different scenarios in which the industrial robot 110 is driven by the user 140 via the mobile device 130 under the base coordinate system in accordance with an example embodiment of the present disclosure. As shown in Fig. 6 at subfigure (a) , after the user 140 selects the “Linear” mode as shown in Fig. 5 at subfigure (a) , the industrial robot 110 may be controlled to move in a linear mode. If the user 140 moves the mobile device 130 along base coordinate system, as the significant motion of the mobile device 130 can be detected by significant motion sensors inbuilt in the mobile device 130, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to move linearly along base coordinate system. In this way, the industrial robot 110 may thus be moved along base coordinate system.
[0052] As shown in Fig. 6 at subfigure (b) , after the user 140 selects the “Reorient” mode as shown in Fig. 5 at subfigure (b) , the industrial robot 110 may be controlled to move in a reorient mode. If the user 140 roll the mobile device 130 about the rolling axis (for example the x-axis) of the device coordinate system, as the orientation and rate of rotation of the mobile device 130 can be determined by rotational vector sensors and gyroscope respectively, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to rotate or reorient about its robot axis (for example, the x-axis of the base coordinate system) . In this way, the industrial robot 110 may thus be rotated or reoriented about its robot axis. Although the mobile device 130 is shown to rotate about x-axis of the device coordinate system in Fig. 6 at subfigure (b) , it is to be understood that under the “Reorient” mode, the mobile device 130 is shown to rotate about y-axis of the device coordinate system, so as to control the tool 111 of the industrial robot 110 to rotate about the y-axis of the base coordinate system. As shown in Fig. 6, the x-axis and y-axis of the device coordinate system are parallel to the main surface (e.g., the screen) of the mobile device 130.
[0053] As shown in Fig. 6 at subfigure (c) , after the user 140 selects the “Axis” mode and the respective axis number as shown in Fig. 5 at subfigure (c) , the industrial robot 110 may be controlled to move in an axis mode. The axis number indicates different joints 115 of the industrial robot 110. For example, the joint 115 nearest the base 113 may be labelled as axis 1, etc. When teaching the industrial robot 110, if the user 140 rotates the mobile device 130 about the vertical axis (for example the z-axis) of the device coordinate system, as the orientation and rate of rotation of the mobile device 130 can be determined by rotational vector sensors and gyroscope respectively, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to rotate about its joint axis (for example, the axis of the joint 115-1) . In this way, the industrial robot 110 may thus be rotated about its joint axis. As shown in Fig. 6 at subfigure (c) , the z-axis of the device coordinate system is normal to the main surface (e.g., the screen) of the mobile device 130. Although the industrial robot 110 is shown to rotate about joint 115-1 in Fig. 6 at subfigure (c) , it is to be understood that under the “Axis” mode, the industrial robot 110 can also rotate about other joints, for example 115-2 if the user 140 selects other axis number as shown in Fig. 5 at subfigure (c) .
[0054] In some example embodiments, after moving the industrial robot 110 to the desired position, the user 140 may use the fingers of right hand to tap the screen or the back cover of the mobile device 130. Then the gesture can be detected by linear acceleration sensors to finish the teaching process.
[0055] According to the example embodiments of the present disclosure, the user 140 is allowed to synchronize the base coordinate system of the industrial robot 110 to the device coordinate system of the mobile device 130 by placing the mobile device 130 at a same plane as the industrial robot 110. Afterwards, the user 140 may teach the industrial robot 110 wirelessly by moving or rotating the mobile device 130 accordingly.
[0056] With reference back to Fig. 3, after the user presses the “Tool” button, the synchronizing process and the driving process of the industrial robot 110 will be carried out in the tool coordinate system.
[0057] Fig. 7 illustrates different scenarios in which the tool coordinate system is synchronized to the device coordinate system in accordance with an example embodiment of the present disclosure.
[0058] Under tool coordinate system, as the relative position and orientation in space of the mobile device 130 can be determined by gravity sensors and orientation sensors inbuilt in the mobile device 130, a camera module of the mobile device 130 is used. As shown in Fig. 7, the user 140 can see the image captured in real by the camera module through the screen of the mobile device and rotate the mobile device 130 at the same time to reach a position parallel to the tool 111 of the industrial robot 110, thus synchronizing the base coordinate system of the industrial robot 110 with the device coordinate system of mobile device 130.
[0059] Fig. 8 illustrates different scenarios in which the industrial robot 110 is driven by the user 140 via the mobile device 130 under the tool coordinate system in accordance with an example embodiment of the present disclosure. As shown in Fig. 8 at subfigure (a) , after the user 140 selects the “Linear” mode via the graphical user interface, the industrial robot 110 may be controlled to move in a linear mode. If the user 140 moves the mobile device 130 along tool coordinate system, as the significant motion of the mobile device 130 can be detected by significant motion sensors inbuilt in the mobile device 130, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to move linearly along tool coordinate system. In this way, the industrial robot 110 may thus be moved along tool coordinate system.
[0060] As shown in Fig. 8 at subfigure (b) , after the user 140 selects the “Reorient” mode via the graphical user interface, the industrial robot 110 may be controlled to move in a reorient mode. If the user 140 roll the mobile device 130 about the rolling axis (for example the x-axis) of the device coordinate system, as the orientation and rate of rotation of the mobile device 130 can be determined by rotational vector sensors and gyroscope respectively, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to rotate or reorient about its robot axis (for example, the x-axis of the tool coordinate system) . In this way, the industrial robot 110 may thus be rotated or reoriented about its robot axis. Although the mobile device 130 is shown to rotate about x-axis of the device coordinate system in Fig. 8 at subfigure (b) , it is to be understood that under the “Reorient” mode, the mobile device 130 is shown to rotate about y-axis of the device coordinate system, so as to control the tool 111 of the industrial robot 110 to rotate about the y-axis of the tool coordinate system. As shown in Fig. 8, the x-axis and y-axis of the device coordinate system are parallel to the main surface (e.g., the screen) of the mobile device 130
[0061] As shown in Fig. 8 at subfigure (c) , after the user 140 selects the “Axis” mode and the respective axis number via the graphical user interface, the industrial robot 110 may be controlled to move in an axis mode. If the user 140 rotates the mobile device 130 about the vertical axis (for example the z-axis) of the device coordinate system, as the orientation and rate of rotation of the mobile device 130 can be determined by rotational vector sensors and gyroscope respectively, the mobile device 130 may transmit an instruction to cause the industrial robot 110 to rotate about its joint axis (for example, the axis of the joint 115-1) . In this way, the industrial robot 110 may thus be rotated about its joint axis. As shown in Fig. 8 at subfigure (c) , the z-axis of the device coordinate system is normal to the main surface (e.g., the screen) of the mobile device 130. Although the industrial robot 110 is shown to rotate about joint 115-1 in Fig. 8 at subfigure (c) , it is to be understood that under the “Axis” mode, the industrial robot 110 can also rotate about other joints, for example 115-2 if the user 140 selects other axis number as shown in Fig. 5 at subfigure (c) .
[0062] According to the example embodiments of the present disclosure, the user 140 is allowed to synchronize the tool coordinate system of the industrial robot 110 to the device coordinate system of the mobile device 130 by rotating the mobile device 130 at a position parallel to the tool 111 of the industrial robot 110. Afterwards, the user 140 may teach the industrial robot 110 wirelessly by moving or rotating the mobile device 130 accordingly.
[0063] In a second aspect, there is provided a mobile device of teaching an industrial robot. The mobile device comprises: a receiving module configured to receive an input from a user, wherein the input indicates a target coordinate system selected by the user; a synchronizing module configured to synchronize the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with the mobile device; and a transmitting module configured to transmit an instruction to a robot controller of the industrial robot based on the controlling information from the sensor to teach the industrial robot in response to receive a controlling information from a sensor inbuilt in the mobile device when the mobile device is moved by the user.
[0064] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is moved linearly by the user, transmitting an instruction to cause the industrial robot to move linearly.
[0065] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rolled about its rolling axis by the user, transmitting an instruction to cause a tool of the industrial robot to rotate about its robot axis, wherein the rolling axis is parallel to a main surface of the moving device.
[0066] In some example embodiments, transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rotated about its vertical axis by the user, transmitting an instruction to cause the industrial robot to rotate about its joint axis, wherein the vertical axis is normal to a main surface of the moving device.
[0067] In some example embodiments, the target coordinate system is selected between a base coordinate system and a tool coordinate system, wherein the base coordinate system is established on a base to which the industrial robot is mounted and the tool coordinate system is established on a tool mounted on the industrial robot.
[0068] In some example embodiments, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the mobile device is further configured to determine whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot.
[0069] In some example embodiments, synchronizing the target coordinate system to a device coordinate system continuously comprising using a camera module of the mobile device to allow the user to see the industrial robot via the camera module to synchronize the target coordinate system to the device coordinate system in real.
[0070] Compared to the existing teaching approaches, as the mobile device 130 according to the present disclosure is capable of wireless connection to the robot controller 120 of the industrial robot 110, only one mobile device 130 is used for multiple robot controllers 120 to operate the industrial robots 110, which may significantly reduce the cost for teaching the industrial robots 110. Moreover, using mobile device 130 to teach the industrial robot 110 how to move is intuitive and easy, so it will reduce the time cost of commissioning for the users.
[0071] Fig. 9 is a schematic diagram illustrating a device 900 that may be used to implement embodiments of the present disclosure. As illustrated, the device 900 includes a central processing unit (CPU) 901, which may execute various appropriate actions and processing based on the computer program instructions stored in a read-only memory (ROM) 902 or the computer program instructions loaded into a random access memory (RAM) 903 from a storage unit 908. The RAM 903 also stores all kinds of programs and data required by operating the storage device 900. CPU 901, ROM 902 and RAM 903 are connected to each other via a bus 904 to which an input / output (I / O) interface 905 is also connected.
[0072] A plurality of components in the device 900 are connected to the I / O interface 905, including: an input unit 906, such as keyboard, mouse and the like; an output unit 907, such as various types of displays, loudspeakers and the like; a storage unit 908, such as the magnetic disk, optical disk and the like; and a communication unit 909, such as network card, modem, wireless communication transceiver and the like. The communication unit 909 allows the device 900 to exchange information / data with other devices through computer networks such as Internet and / or various telecommunication networks.
[0073] Each procedure and processing described above may be executed by a processing unit 901. For example, in some embodiments, the method may be implemented as computer software programs, which are tangibly included in a machine-readable medium, such as storage unit 908. In some embodiments, the computer program may be partially or completely loaded and / or installed to the device 900 via ROM 902 and / or the communication unit 909. When the computer program is loaded to RAM 903 and executed by CPU 901, one or more steps of the above described method 200 are implemented.
[0074] In some embodiments, the method 200 described above may be implemented as a computer program product. The computer program product may include a computer-readable storage medium loaded with computer-readable program instructions thereon for executing various aspects of the present disclosure.
[0075] The computer-readable storage medium may be a tangible device capable of holding and storing instructions used by the instruction-executing device. The computer-readable storage medium can be, but not limited to, for example, electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices or any random appropriate combinations thereof. More specific examples (non-exhaustive list) of the computer-readable storage medium include: portable computer disk, hard disk, random-access memory (RAM) , read-only memory (ROM) , erasable programmable read-only memory (EPROM or flash) , static random access memory (SRAM) , portable compact disk read-only memory (CD-ROM) , digital versatile disk (DVD) , memory stick, floppy disk, mechanical coding device, such as a punched card storing instructions or an emboss within a groove, and any random suitable combinations thereof. The computer-readable storage medium used herein is not interpreted as a transient signal itself, such as radio wave or other freely propagated electromagnetic wave, electromagnetic wave propagated through waveguide or other transmission medium (such as optical pulses passing through fiber-optic cables) , or electric signals transmitted through electric wires.
[0076] The computer-readable program instructions described herein may be downloaded from the computer-readable storage medium to various computing / processing devices, or to external computers or external storage devices via Internet, local area network, wide area network and / or wireless network. The network may include copper transmission cables, optical fiber transmission, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. The network adapter or network interface in each computing / processing device receives computer-readable program instructions from the network, and forwards the computer-readable program instructions for storage in the computer-readable storage medium of each computing / processing device.
[0077] The computer program instructions for executing the operations of the present disclosure may be assembly instructions, instructions of instruction set architecture (ISA) , machine instructions, machine-related instructions, microcodes, firmware instructions, state setting data, or a source code or target code written by any combinations of one or more programming languages including object-oriented programming languages and conventional procedural programming languages. The computer-readable program instructions may be completely or partially executed on the user computer, or executed as an independent software package, or executed partially on the user computer and partially on the remote computer, or completely executed on the remote computer or the server. In the case where a remote computer is involved, the remote computer may be connected to the user computer by any type of networks, including local area network (LAN) or wide area network (WAN) , or connected to an external computer (such as via Internet provided by the Internet service provider) . In some embodiments, the electronic circuit is customized by using the state information of the computer-readable program instructions. The electronic circuit may be a programmable logic circuit, a field programmable gate array (FPGA) or a programmable logic array (PLA) for example. The electronic circuit may execute computer-readable program instructions to implement various aspects of the present disclosure.
[0078] The computer-readable program instructions may be provided to the processing unit of a general purpose computer, a dedicated computer or other programmable data processing devices to generate a machine, causing the instructions, when executed by the processing unit of the computer or other programmable data processing devices, to generate a device for implementing the functions / actions specified in one or more blocks of the flow chart and / or block diagram. The computer-readable program instructions may also be stored in the computer-readable storage medium. These instructions enable the computer, the programmable data processing device and / or other devices to operate in a particular way, such that the computer-readable medium storing instructions may comprise a manufactured article that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks of the flow chart and / or block diagram.
[0079] The computer-readable program instructions may also be loaded into computers, other programmable data processing devices or other devices, so as to execute a series of operational steps on the computers, other programmable data processing devices or other devices to generate a computer implemented process. Therefore, the instructions executed on the computers, other programmable data processing devices or other devices can realize the functions / actions specified in one or more blocks of the flow chart and / or block diagram.
[0080] The accompanying flow chart and block diagram present possible architecture, functions and operations realized by the system, method and computer program product according to a plurality of embodiments of the present disclosure. At this point, each block in the flow chart or block diagram may represent a module, a program segment, or a portion of the instruction. The module, the program segment or the portion of the instruction includes one or more executable instructions for implementing specified logic functions. In some alternative implementations, the function indicated in the block may also occur in an order different from the one represented in the drawings. For example, two consecutive blocks actually may be executed in parallel, and sometimes they may also be executed in a reverse order depending on the involved functions. It should also be noted that each block in the block diagram and / or flow chart, and any combinations of the blocks thereof may be implemented by a dedicated hardware-based system for implementing specified functions or actions, or a combination of the dedicated hardware and the computer instructions.
[0081] Various embodiments of the present disclosure have been described above, and the above explanation is illustrative rather than exhaustive and is not limited to the disclosed embodiments. Without departing from the scope and spirit of each explained embodiment, many alterations and modifications are obvious for those ordinary skilled in the art. The selection of terms in the text aims to best explain principle, actual application or technical improvement in the market of each embodiment or make each embodiment disclosed in the text comprehensible for those ordinary skilled in the art.
[0082] It is to be understood that although the above disclosure is described by taking the object transferring scenario as examples, this is only for illustration without suggesting any limitations as to the scope of the subject matter described here.
[0083] Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are contained in the above discussions, these should not be construed as limitations on the scope of the present disclosure, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. On the other hand, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination.
[0084] Although the subject matter has been described in language specific to structural features and / or methodological acts, it is to 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 of teaching an industrial robot, comprising:receiving an input from a user, wherein the input indicates a target coordinate system selected by the user;synchronizing the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with a mobile device; andtransmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor to teach the industrial robot in response to receive a controlling information from a sensor inbuilt in the mobile device when the mobile device is moved by the user.2.The method of claim 1, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is moved linearly by the user, transmitting an instruction to cause the industrial robot to move linearly.3.The method of claim 1, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rolled about its rolling axis by the user, transmitting an instruction to cause a tool of the industrial robot to rotate about its robot axis, wherein the rolling axis is parallel to a main surface of the moving device.4.The method of claim 1, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rotated about its vertical axis by the user, transmitting an instruction to cause the industrial robot to rotate about its joint axis, wherein the vertical axis is normal to a main surface of the moving device.5.The method of any of claims 1-4, wherein the target coordinate system is selected between a base coordinate system and a tool coordinate system, wherein the base coordinate system is established on a base to which the industrial robot is mounted and the tool coordinate system is established on a tool mounted on the industrial robot.6.The method of any of claims 1-5, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the method further comprising determining whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot.7.The method of any of claims 1-6, synchronizing the target coordinate system to a device coordinate system continuously comprising using a camera module of the mobile device to allow the user to see the industrial robot via the camera module to synchronize the target coordinate system to the device coordinate system in real.8.A mobile device of teaching an industrial robot, comprising:a receiving module configured to receive an input from a user, wherein the input indicates a target coordinate system selected by the user;a synchronizing module configured to synchronize the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with the mobile device; anda transmitting module configured to transmit an instruction to a robot controller of the industrial robot based on the controlling information from the sensor to teach the industrial robot in response to receive a controlling information from a sensor inbuilt in the mobile device when the mobile device is moved by the user.9.The mobile device of claim 8, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is moved linearly by the user, transmitting an instruction to cause the industrial robot to move linearly.10.The mobile device of claim 8, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rolled about its rolling axis by the user, transmitting an instruction to cause a tool of the industrial robot to rotate about its robot axis, wherein the rolling axis is parallel to a main surface of the moving device.11.The mobile device of claim 8, wherein transmitting an instruction to a robot controller of the industrial robot comprises: in response to determine that the mobile device is rotated about its vertical axis by the user, transmitting an instruction to cause the industrial robot to rotate about its joint axis, wherein the vertical axis is normal to a main surface of the moving device.12.The mobile device of any of claims 8-11, wherein the target coordinate system is selected between a base coordinate system and a tool coordinate system, wherein the base coordinate system is established on a base to which the industrial robot is mounted and the tool coordinate system is established on a tool mounted on the industrial robot.13.The mobile device of any of claims 8-12, prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, the mobile device is further configured to determine whether a button is clicked by the user, wherein the clicking of the button is used as a token for moving the industrial robot.14.The mobile device of any of claims 8-13, synchronizing the target coordinate system to a device coordinate system continuously comprising using a camera module of the mobile device to allow the user to see the industrial robot via the camera module to synchronize the target coordinate system to the device coordinate system in real.
Citation Information
Patent Citations
Visual industrial robot teaching system
CN114474011A
Hand-held control device for an industrial robot
EP1795315A1
Controller of industrial machine
JP1985191308A
Industrial robot
JP1997168986A
Intuitive Motion Coordinate System for Controlling an Industrial Robot
US20150321351A1