IP Library Granted Patent US 10,241,515
Granted Patent B2
US 10,241,515 · App. 15/167,002 · Granted Mar 26, 2019

Method, system and apparatus for handling operational constraints for control of unmanned vehicles

Inventors: Ryan Christopher Gariepy (Kitchener, CA); Alex Bencz (Kitchener, CA); Andrew Clifford Blakey (Kitchener, CA); Shahab Kaynama (Etobicoke, CA); James Servos (Kitchener, CA)
G05D1/0088B66F9/063G01C21/3407G05D1/0212G05D1/0223G05D1/0274G05D1/0297G05D2201/0216
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,241,515
App. No.
15/167,002
Granted
Mar 26, 2019
Kind
B2
Abstract

Systems, methods and apparatus are provided for handling operational constraints for unmanned vehicles. The system includes: a plurality of mobile unmanned vehicles for deployment in an environment; a computing device connected to the plurality of unmanned vehicles via a network, the computing device storing, in a memory, a plurality of operational constraints; each operational constraint including (i) a type identifier, (ii) an indication of a region of the environment, and (iii) a property defining a constraint on the operation of the unmanned vehicles within the region. The computing device is configured to: receive a request from one of the mobile unmanned vehicles, the request identifying an operational constraint; responsive to receiving the request, retrieve an operational constraint from the memory based on the request; and send the retrieved operational constraint to the one of the mobile unmanned vehicles.

Claims (36)

1. A system, comprising:

at least one robot for deployment in an environment;

a computing device connected to the at least one robot via a network, the computing device storing, in a memory, a plurality of operational constraints; each operational constraint including (i) a class identifier that identifies at least one of a speed limit and a travel direction associated with a region of the environment, (ii) an indication of the region, and (iii) a property defining a constraint on an operation of the at least one robot within the region, the computing device configured to:

receive a request sent from one of the at least one robot, the request associated with an operational constraint,

responsive to receiving the request, retrieve an operational constraint from the memory based on the request, and

send the retrieved operational constraint to the one of the at least one robot,

wherein the one of the at least one robot operates according to the retrieved operational constraint by controlling at least one of a speed of at least one drive motor of the robot and a direction of the one of the at least one robot based on the one of the at least one robot being located within the region of the environment.

2. The system of claim 1 , wherein the region is at least one of an area and a volume within the environment.

3. The system of claim 2 , wherein a set of regions for a plurality of the operational constraints having the same class are stored as polygons in an image file; and wherein properties corresponding to the set of regions are stored in association with the polygons.

4. The system of claim 1 , wherein the request identifies a location within the environment; the computing device configured to retrieve any operational constraints indicating regions that intersect the location.

5. The system of claim 1 , wherein the request identifies a class of operational constraint; the computing device configured to retrieve any operational constraints including classes that match the requested class.

6. The system of claim 1 , the one of the at least one robot further configured, prior to sending the request, to execute a navigational process and to determine whether any operational constraints are required for the navigational process.

7. The system of claim 6 , wherein the navigational process comprises at least one of: path generation, path execution, and mapping and localization.

8. The system of claim 6 , the one of the at least one robot further configured, when the determination is affirmative, to examine a cache in a robot memory to assess that the required operational constraints are present in the cache.

9. The system of claim 8 , the one of the at least one robot further configured, when the required operational constraints are not present in the cache, to send the request.

10. The system of claim 6 , the one of the at least one robot further configured to receive the operational constraint from the computing device, to store the operational constraint in the robot memory, and to resume execution of the navigational process.

11. The system of claim 10 , wherein the navigational process is a path execution process; the one of the at least one robot configured to set a speed of travel for the path execution process based on the operational constraint.

12. The system of claim 1 , the computing device further configured, prior to storing the plurality of operational constraints, to store operational constraint templates, each template including (i) a class and (ii) a property definition.

13. The system of claim 12 , the computing device further configured to receive a request to create the operational constraint based on at least one of the operational constraint templates prior to receiving the request from the one of the at least one robot.

14. The system of claim 13 , the computing device further configured, responsive to receiving the request to create the operational constraint, to present a list of the operational constraint templates and to receive a selection of one of the operational constraint templates.

15. The system of claim 14 , the computing device further configured to retrieve and present the property definition for the selected operational constraint template, to receive a value corresponding to the property definition, and to create and store a new operational constraint containing (i) the class of the operational constraint template and (ii) a property containing the value.

16. The system of claim 12 , the computing device further configured to determine any of the operational constraints having overlapping regions contain conflicting properties.

17. The system of claim 12 , the computing device further configured to determine whether any of the operational constraints having adjacent regions contain potentially conflicting properties.

18. A method in a system having at least one robot for deployment in an environment and a computing device connected to the at least one robot via a network, the method comprising:

storing, in a memory of the computing device, a plurality of operational constraints; each operational constraint including (i) a class identifier that identifies one of a speed limit and a travel direction restriction of a region of the environment, (ii) an indication of the region, and (iii) a property defining a constraint on an operation of the at least one robot within the region;

at the computing device:

receiving a request sent from one of the at least one robot, the request associated with an operational constraint;

responsive to receiving the request, retrieving an operational constraint from the memory based on the request;

sending the retrieved operational constraint to the one of the at least one robot; and

operating the one of the at least one robot according to the retrieved operational constraint by controlling at least one of a speed of at least one drive motor of the robot and a direction of the one of the at least one robot based on the one of the at least one robot being located within the region of the environment.

19. A non-transitory computer-readable medium storing computer-readable instructions for execution by a processor of a computing device for causing the computing device to perform a method, the method comprising:

storing a plurality of operational constraints; each operational constraint including (i) a class identifier that identifies one of a speed limit and a travel direction restriction of a region of the environment, (ii) an indication of the region in which at least one robot is to be deployed, and (iii) a property defining a constraint on an operation of the at least one robot within the region;

receiving a request sent from one of the at least one robot, the request associated with an operational constraint;

responsive to receiving the request, retrieving an operational constraint from the memory based on the request;

sending the retrieved operational constraint to the one of the at least one robot via the network; and

operating the one of the at least one robot according to the retrieved operational constraint by controlling at least one of a speed of at least one drive motor of the robot and a direction of the one of the at least one robot based on the one of the at least one robot being located within the region of the environment.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY'S NAME FROM CLEARPATH ROBOTICS, INC. TO CLEARPATH ROBOTICS INC. (WITHOUT THE COMMA) PREVIOUSLY RECORDED ON REEL 67944 FRAME 916. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 25, 2024
From: CLEARPATH ROBOTICS INC.
To: ROCKWELL AUTOMATION, INC.
Reel/Frame 068233/0542 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2024
From: CLEARPATH ROBOTICS, INC.
To: ROCKWELL AUTOMATION, INC.
Reel/Frame 067944/0916 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2024
From: ROCKWELL AUTOMATION, INC.
To: ROCKWELL AUTOMATION TECHNOLOGIES, INC.
Reel/Frame 067944/0982 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT NAME OF THE RECEIVING PARTY IS "CLEARPATH ROBOTICS INC." (WITHOUT THE COMMA) PREVIOUSLY RECORDED AT REEL: 038738 FRAME: 0291. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 12, 2023
From: GARIEPY, RYAN CHRISTOPHER; BENCZ, ALEX; BLAKEY, ANDREW CLIFFORD; KAYNAMA, SHAHAB; SERVOS, JAMES
To: CLEARPATH ROBOTICS INC.
Reel/Frame 065220/0949 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2016
From: GARIEPY, RYAN CHRISTOPHER; BENCZ, ALEX; BLAKEY, ANDREW CLIFFORD; KAYNAMA, SHAHAB; SERVOS, JAMES
To: CLEARPATH ROBOTICS, INC.
Reel/Frame 038738/0291 →
Continuity (2)
Provisional Application 62168511 · May 29, 2015
Related Publication 20160349749A1 · Dec 1, 2016
Cited By (2)
US 12,384,457 US 12,559,314