WO2025179556A1 - Method and mobile device of teaching industrial robot - Google Patents

Method and mobile device of teaching industrial robot

Info

Publication number
WO2025179556A1
WO2025179556A1 PCT/CN2024/079417 CN2024079417W WO2025179556A1 WO 2025179556 A1 WO2025179556 A1 WO 2025179556A1 CN 2024079417 W CN2024079417 W CN 2024079417W WO 2025179556 A1 WO2025179556 A1 WO 2025179556A1
Authority
WO
WIPO (PCT)
Prior art keywords
coordinate system
industrial robot
mobile device
user
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/CN2024/079417
Other languages
French (fr)
Inventor
Xu SU
Kun Chang
Xiaodi Yu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ABB Schweiz AG
Original Assignee
ABB Schweiz AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ABB Schweiz AG filed Critical ABB Schweiz AG
Priority to PCT/CN2024/079417 priority Critical patent/WO2025179556A1/en
Publication of WO2025179556A1 publication Critical patent/WO2025179556A1/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1664Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the program is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36159Detachable or portable programming unit, display, pc, pda
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39443Portable, adapted to handpalm, with joystick, function keys, display

Definitions

  • 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.
  • 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.
  • every robot system is equipped with a teaching pendant.
  • the teaching pendant fails, the cost of replacing it with a new one will be high.
  • 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.
  • example embodiments of the present disclosure provide a method and a mobile device of teaching an industrial robot.
  • 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; 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.
  • the users can conveniently teach the industrial robot by moving or rotating the mobile device.
  • 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.
  • 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.
  • 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.
  • 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.
  • the method 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.
  • 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.
  • a mobile device of teaching an industrial robot 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • the mobile device prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, 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.
  • 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.
  • Fig. 1 illustrates a schematic diagram of a robotic system in accordance with an example embodiment of the present disclosure.
  • Fig. 2 illustrates a method of teaching an industrial robot in accordance with an example embodiment of the present disclosure.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • Fig. 9 is a schematic diagram illustrating a device that may be used to implement embodiments of the present disclosure.
  • 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.
  • 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.
  • the teaching process is inconvenient and costly.
  • the present disclosure proposes a solution by using the built-in sensors of a mobile device that measure motion and orientation.
  • 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.
  • the user may use the mobile device to move the industrial robot along a desired coordinate system.
  • FIG. 1 illustrates a schematic diagram of a robotic system 10 in accordance with an example embodiment of the present disclosure.
  • 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.
  • 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.
  • 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.
  • Fig. 2 illustrates a method 200 of teaching an industrial robot 110 in accordance with an example embodiment of the present disclosure.
  • the method 200 comprises receiving an input from a user 140, wherein the input indicates a target coordinate system selected by the user 140.
  • 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.
  • 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.
  • the user 140 may select a desired coordinate system via the mobile device 130 conveniently.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • the user 140 needs to hold the mobile device 130 in both hands.
  • the method 200 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.
  • 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.
  • 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.
  • 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.
  • the mode may include linear mode, reorient mode and axis mode.
  • the industrial robot 110 may be controlled to move in respective moving mode.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • the joint 115 nearest the base 113 may be labelled as axis 1, etc.
  • 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.
  • the z-axis of the device coordinate system is normal to the main surface (e.g., the screen) of the mobile device 130.
  • 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) .
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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
  • 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.
  • the z-axis of the device coordinate system is normal to the main surface (e.g., the screen) of the mobile device 130.
  • 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) .
  • 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.
  • a mobile device of teaching an industrial robot 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • the mobile device prior to transmitting an instruction to a robot controller of the industrial robot based on the controlling information from the sensor, 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.
  • 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.
  • the mobile device 130 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.
  • Fig. 9 is a schematic diagram illustrating a device 900 that may be used to implement embodiments of the present disclosure.
  • 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.
  • I/O input/output
  • 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.
  • each procedure and processing described above may be executed by a processing unit 901.
  • the method may be implemented as computer software programs, which are tangibly included in a machine-readable medium, such as storage unit 908.
  • 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.
  • 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.
  • 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.
  • the computer-readable storage medium includes: 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.
  • RAM random-access memory
  • ROM read-only memory
  • EPROM or flash erasable programmable read-only memory
  • SRAM static random access memory
  • CD-ROM compact disk read-only memory
  • DVD digital versatile disk
  • 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.
  • 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.
  • 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.
  • 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) .
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

A method of teaching an industrial robot (110), comprising: receiving an input from a user (140), wherein the input indicates a target coordinate system selected by the user (140); synchronizing the target coordinate system to a device coordinate system continuously, wherein the device coordinate system is associated with a mobile device (130); and 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 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). The users can conveniently teach the industrial robot (110) by moving or rotating the mobile device (130). A mobile device (130) of teaching the industrial robot (110) is also provided.

Description

METHOD AND MOBILE DEVICE OF TEACHING INDUSTRIAL ROBOT FIELD
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
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
In general, example embodiments of the present disclosure provide a method and a mobile device of teaching an industrial robot.
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.
According to example embodiments, the users can conveniently teach the industrial robot by moving or rotating the mobile device.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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:
Fig. 1 illustrates a schematic diagram of a robotic system in accordance with an example embodiment of the present disclosure.
Fig. 2 illustrates a method of teaching an industrial robot in accordance with an example embodiment of the present disclosure.
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.
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.
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.
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.
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.
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.
Fig. 9 is a schematic diagram illustrating a device that may be used to implement embodiments of the present disclosure.
Throughout the drawings, the same or similar reference numerals represent the same or similar element.
DETAILED DESCRIPTION
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
To move the industrial robot 110, the user 140 needs to hold the mobile device 130 in both hands.
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.
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.
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.
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.
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) .
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.
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.
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.
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.
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.
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.
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
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) .
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 (14)

  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; 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.
  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; 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.
  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.
PCT/CN2024/079417 2024-02-29 2024-02-29 Method and mobile device of teaching industrial robot Pending WO2025179556A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2024/079417 WO2025179556A1 (en) 2024-02-29 2024-02-29 Method and mobile device of teaching industrial robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2024/079417 WO2025179556A1 (en) 2024-02-29 2024-02-29 Method and mobile device of teaching industrial robot

Publications (1)

Publication Number Publication Date
WO2025179556A1 true WO2025179556A1 (en) 2025-09-04

Family

ID=96919713

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2024/079417 Pending WO2025179556A1 (en) 2024-02-29 2024-02-29 Method and mobile device of teaching industrial robot

Country Status (1)

Country Link
WO (1) WO2025179556A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60191308A (en) * 1984-03-13 1985-09-28 Mitsubishi Electric Corp Controller of industrial machine
JPH09168986A (en) * 1995-12-20 1997-06-30 Tokico Ltd Industrial robot
EP1795315A1 (en) * 2006-05-31 2007-06-13 Abb Research Ltd. Hand-held control device for an industrial robot
US20150321351A1 (en) * 2014-05-08 2015-11-12 Chetan Kapoor Intuitive Motion Coordinate System for Controlling an Industrial Robot
CN114474011A (en) * 2020-11-13 2022-05-13 苏州艾利特机器人有限公司 Visual industrial robot teaching system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60191308A (en) * 1984-03-13 1985-09-28 Mitsubishi Electric Corp Controller of industrial machine
JPH09168986A (en) * 1995-12-20 1997-06-30 Tokico Ltd Industrial robot
EP1795315A1 (en) * 2006-05-31 2007-06-13 Abb Research Ltd. Hand-held control device for an industrial robot
US20150321351A1 (en) * 2014-05-08 2015-11-12 Chetan Kapoor Intuitive Motion Coordinate System for Controlling an Industrial Robot
CN114474011A (en) * 2020-11-13 2022-05-13 苏州艾利特机器人有限公司 Visual industrial robot teaching system

Similar Documents

Publication Publication Date Title
CN110573308B (en) Computer-based method and system for spatial programming of robotic devices
US12223829B2 (en) Method, device, and computer-readable medium for mobile device management of collaborative industrial robot
US10635082B2 (en) Robot motion program generating method and robot motion program generating apparatus
JP7843700B2 (en) Configuration framework for robot control systems
EP4306270A1 (en) Program management device, robot control system, and program management method
US10315305B2 (en) Robot control apparatus which displays operation program including state of additional axis
Diachenko et al. Industrial collaborative robot Digital Twin integration and control using Robot Operating System
JP2018144141A (en) Control system, controller, control method, and control program
Banduka Remote monitoring and control of industrial robot based on android device and wi-fi communication
CN110297460A (en) Thermal walking update the system and computer
US11340576B2 (en) Method and apparatus for estimating system error of commissioning tool of industrial robot
WO2025179556A1 (en) Method and mobile device of teaching industrial robot
Lambrecht et al. Spatial programming for industrial robots: efficient, effective and user-optimised through natural communication and augmented reality
Kuts et al. Digital twin: Universal user interface for online management of the manufacturing system
US12614363B2 (en) Systems and methods for adjusting a user position in virtual reality
Szilágyi et al. Middleware for mixed reality integration of industrial robot cells
Deák et al. Smartphone–controlled industrial robots: Design and user performance evaluation
WO2023207164A1 (en) Robot operation control method and apparatus
KR20180132186A (en) Integrated control method of robot, integrated control device for the same, sub control device and integrated control system
Moreno et al. Performance evaluation of ROS on the Raspberry Pi platform as OS for small robots
WO2022208849A1 (en) Robot control device, robot control system, and robot control method
JP6653763B2 (en) Robot system, robot controller, robot control method, robot program
CN116880347B (en) Two-dimensional position comparison system for motion control
WO2025217912A1 (en) Method and electronic device for use with industrial robot
Lutovac Banduka Daljinski nadzor i upravljanje industrijskim robotima temeljeni na upotrebi Android uređaja i Wi-Fi komunikacije

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24926436

Country of ref document: EP

Kind code of ref document: A1