IP Library Granted Patent US 10,518,413
Granted Patent B2
US 10,518,413 · App. 15/777,773 · Granted Dec 31, 2019

Industrial robot and method for controlling the robot to automatically select which program code to be executed next

Inventors: Annika Hedlund (Västerås, SE); Ivan Lundberg (Västerås, SE); Jonathan Styrud (Västerås, SE); Martin Nordvall (Västerås, SE); Ralph Sjöberg (Västerås, SE); Tomas Groth (Västerås, SE)
Assignee: ABB Schweiz AG
B25J9/1664B25J9/1656G05B19/42G05B2219/39453G05B2219/50049
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,518,413
App. No.
15/777,773
Granted
Dec 31, 2019
Kind
B2
Abstract

An industrial robot including a manipulator and a robot control unit are disclosed, wherein the manipulator includes a plurality of joints that are moved under the control of the control unit, and the control unit includes a storage medium including program code for controlling the motions of the robot when executed by the control unit. The control unit is configured to automatically select which part of the program code to be executed next based on the position of the robot. A method for controlling the robot is also disclosed.

Claims (33)

1. A method for controlling an industrial robot comprising a manipulator and a control unit including program code for causing the robot to perform a plurality of tasks by controlling the motions of the manipulator, wherein the method includes:

defining a plurality of locations in the surroundings of the robot, each of the locations being assigned a part of the program code,

determining that the robot has been moved by a user to a new position when execution of the program code has been interrupted,

automatically selecting which part of the program code is to be executed next based on the closeness between the new position of the manipulator and the defined locations, including automatically selecting which task to be executed next based on the new position, and

upon command executing the selected part of the program code.

2. The method according to claim 1 , wherein the method includes determining the closeness between the new position of the robot and the locations, and selecting the program code assigned to the location based on the closeness to the new position of the robot.

3. The method according to claim 1 , wherein the method includes detecting that execution of the program code has been stopped, and upon command executing the selected part of the program code.

4. The method according to claim 1 , wherein the method includes presenting the result of the selection on a user interface, and executing the selected part of the program code upon receiving an approval from the user.

5. The method according to claim 1 , wherein the method includes deciding whether to continue execution of a current task or to execute another of said tasks based on the new position of the robot.

6. The method according to claim 1 , wherein said locations include a plurality of defined points, each of the defined points being assigned a part of the program code, and the method includes:

determining the closeness between the new position of the robot and the defined points, and

selecting which part of the program code to be executed next based on the closeness between the new position of the robot and the defined points.

7. The method according to claim 6 , wherein the method includes:

storing a stop position of the robot when execution of the program code has been interrupted,

determining the closeness between the new position of the robot and the stop position of the robot, and

selecting which part of the program code to be executed next based on the determined closeness between the new position of the robot, the defined points and the stop position such that the currently executed part of the program code is selected if the new position of the robot is closest to the stop position, and otherwise the part of the robot program code assigned to the defined point closest to the new position of the robot is selected.

8. The method according to claim 1 , wherein said locations includes a plurality of defined zones within an operating range of the robot, and each of the zones being assigned a part of the program code, and the method includes:

determining whether the new position of the robot is within any of said zones, and

selecting which part of the program code to be executed next based on in which of said zones the new position of the robot is located.

9. An industrial robot including:

a manipulator and a robot control unit,

wherein the manipulator includes a plurality of joints that are moved under the control of the control unit, and the control unit includes a storage medium including program code for causing the robot to perform a plurality of tasks by controlling the motions of the manipulator when executed by the control unit,

wherein a plurality of locations in the surroundings of the robot have been defined, each of the locations being assigned a part of the program code, and

wherein the control unit is configured to automatically select which part of the program code is to be executed next based on the closeness between a new position of the manipulator and the defined locations when execution of the program code has been interrupted, including being configured to automatically select which task to be executed next based on the new position, and wherein the control unit is configured to execute the selected part of the program code upon command.

10. The industrial robot according to claim 9 , wherein the robot includes a user interface, and the control unit is configured to present the result of the selection on the user interface, and to execute the selected part of the program code upon receiving an approval from the user.

11. The method according to claim 2 , wherein the method includes detecting that execution of the program code has been stopped, and upon command executing the selected part of the program code.

12. The method according to claim 2 , wherein the method includes presenting the result of the selection on a user interface, and executing the selected part of the program code upon receiving an approval from the user.

13. The method according to claim 2 , wherein said locations include a plurality of defined points, each of the defined points being assigned a part of the program code, and the method includes:

determining the closeness between the new position of the robot and the defined points, and

selecting which part of the program code to be executed next based on the closeness between the new position of the robot and the defined points.

14. The method according to claim 2 , wherein said locations includes a plurality of defined zones within an operating range of the robot, and each of the zones being assigned a part of the program code, and the method includes:

determining whether the new position of the robot is within any of said zones, and

selecting which part of the program code to be executed next based on in which of said zones the new position of the robot is located.

Assignments (2)
CHANGE OF NAME Recorded Jun 26, 2018
From: ABB TECHNOLOGY LTD
To: ABB SCHWEIZ AG
Reel/Frame 046200/0738 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2018
From: HEDLUND, ANNIKA; LUNDBERG, IVAN; STYRUD, JONATHAN; NORDVALL, MARTIN; SJÖBERG, RALPH; GROTH, TOMAS
To: ABB TECHNOLOGY LTD
Reel/Frame 046173/0556 →
Continuity (1)
Related Publication 20180345494A1 · Dec 6, 2018