# US 11,079,770 B2 · Methods, systems and apparatus for controlling movement of transporting devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,079,770 B2
- Document ID: US11079770B2
- Status: Granted
- Kind: B2
- Application number: 17/149,426
- Filed: 2021-01-14
- Published: 2021-05-20
- Granted: 2021-08-03
- Earliest claimed: 2014-06-03
- Assignees: Ocado Innovation Limited
- Applicants: Ocado Innovation Limited
- Inventors: Robert Stadie; Matthew Whelan; Christopher Brett
- Web page: https://patentgrep.com/patent/US11079770B2

## CPC

- B65G 1/065: {with self propelled cars}
- B65G 1/0464: {with access from above}
- B65G 1/0478: {for matrix-arrangements}
- B65G 1/137: with arrangements or automatic control means for selecting which articles are to be removed
- B65G 1/1378: {the orders being assembled on fixed commissioning areas remote from the storage areas}
- B66F 9/063: {Automatically guided}
- G05B 19/4189: {characterised by the transport system}
- G05B 19/41895: {using automatic guided vehicles [AGV] (control of position or course of AGV's G05D1/00)}
- G05D 1/0255: {using acoustic signals, e.g. ultra-sonic singals (sonar systems designed for anti-collision purposes G01S15/93)}
- G05D 1/0289: {with means for avoiding collisions between vehicles (vehicle fittings for automatically controlling speed including means for detecting potential obstacles B60K31/0008; avoiding obstacles by action on the steering system B62D; radar, sonar, lidar systems designed for anti-collision purposes G01S13/93, G01S15/93, G01S17/93)}
- G05D 1/0297: {by controlling means in a control room}
- G05D 1/223: Command input arrangements on the remote controller, e.g. joysticks or touch screens
- G05D 1/247: using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
- G05D 1/693: for avoiding collisions between vehicles
- G06Q 10/04: Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem" (market predictions or forecasting for commercial activities G06Q30/0202)
- G06Q 10/08: Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q 10/087: Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q 10/08743: {using optimisation of routes}
- B60L 58/12: responding to state of charge [SoC]
- B65G 1/0421: {with control for stacker crane operations}
- B65G 1/1371: {with data records}
- Y02T 10/70: Energy storage systems for electromobility, e.g. batteries
- B65G: TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS (packaging B65B; handling thin or filamentary materials, e.g. paper sheets or thread, B65H; cranes B66C; portable mobile or lifting or hauling appliances, e.g. hoists, B66D; devices for lifting or lowering goods for loading or unloading purposes, e.g. fork-lift trucks, B66F9/00; emptying bottles, jars, casks, barrels or similar containers, not otherwise provided for, B67C9/00; delivering or transferring liquids B67D; filling or discharging vessels for liquefied, solidified or compressed gases F17C; pipe-line systems for fluids F17D)
- B66F: HOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD ({invalid lifting devices A61G7/10; } mounting artificial islands on piles or like supports E02B17/00; scaffolding combined with lifting devices E04G1/22; lifting devices for sliding forms E04G11/24; lifting of buildings E04G23/06; shores or struts E04G25/00; lifts or other hoisting devices on ladders E06C7/12; props for mining E21D15/00)
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- B60L: PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES (arrangements or mounting of electrical propulsion units or of plural diverse prime-movers for mutual or common propulsion in vehicles B60K1/00, B60K6/20; arrangements or mounting of electrical gearing in vehicles B60K17/12, B60K17/14; preventing wheel slip by reducing power in rail vehicles B61C15/08; dynamo-electric machines H02K; control or regulation of electric motors H02P); SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES (electric coupling devices combined with mechanical couplings of vehicles B60D1/64; electric heating for vehicles B60H1/00); ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL (control or regulation of electric motors H02P); MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- Y02T: CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION

## Abstract

A system and method for controlling movement of transporting devices arranged to transport containers, the containers being stored in stacks arranged in a facility. A facility having pathways arranged in a grid-like structure above stacks, the transporting devices being configured to operate on the grid-like structure. A control unit configured to determine at least one task to be performed by at least one transporting device, wherein the at least one task is determined based on at least one of: transporting device battery condition, transporting device damage, transporting device maintenance issues, and transporting device service issues.

## Claims

### Claim 1

A system for controlling movement of at least one transporting device arranged to transport at least one container, the system comprising:
one or more processors configured to:
determine a plurality of paths for a plurality of transporting devices to travel on pathways of a facility so that no two of the plurality of transporting devices have locations while traveling along the plurality of paths that would cause the plurality of transporting devices to overlap at a same time, the plurality of paths comprising a first path for traveling by a first transporting device of the plurality of transporting devices and a second path for traveling by a second transporting device of the plurality of transporting devices,
wherein the pathways form a grid-like structure above a plurality of containers arranged within the facility, the pathways comprising a first set of parallel rails extending in a first direction and a second set of parallel rails extending in a second direction transverse to the first direction in a substantially horizontal plane, at least some of the plurality of containers being stored in stacks,
wherein the plurality of transporting devices are configured to selectively move laterally in the first direction and the second direction on the pathways, at least some of the plurality of transporting devices being configured to transport the plurality of containers,
generate a plurality of clearance commands for the plurality of transporting devices to cause the plurality of transporting devices to travel on the pathways along portions of the plurality of paths, the plurality of clearance commands comprising a first clearance command for the first transporting device,
determine there is a potential for a collision between the first transporting device traveling along the first path and the second transporting device traveling along the second path, and
responsive to a determination that there is the potential for the collision;
withhold a second clearance command for the first transporting device that would cause the first transporting device to travel on the pathways along a portion of the first path,
determine a revised path different from the first path for the first transporting device to travel on the pathways, and
generate a third clearance command for the first transporting device to cause the first transporting device to travel on the pathways along a portion of the revised path; and
a memory device configured to store the plurality of clearance commands and the third clearance command.

### Claim 2 (depends on 1)

The system of claim 1, wherein the plurality of clearance commands indicate a permission for the plurality of transporting devices to travel on the pathways only along the portions of the plurality of paths.

### Claim 3 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to generate one of the plurality of clearance commands to cause the first transporting device to travel on the pathways along a first portion of the first path and another of the plurality of clearance commands to cause the first transporting device to travel on the pathways along a second portion of the first path different from the first portion.

### Claim 4 (depends on 1)

The system of claim 1, wherein the first clearance command is configured to cause the first transporting device to travel from a first location to a second location along the first path, and the third clearance command is configured to cause the first transporting device to travel from the second location to a third location along the revised path.

### Claim 5 (depends on 1)

The system of claim 1, wherein the first path and the revised path have a common end location on the grid-like structure.

### Claim 6 (depends on 1)

The system of claim 1, wherein the third clearance command is configured to cause the first transporting device to transition from traveling along the first path to traveling along the revised path while the first transporting device remains in motion.

### Claim 7 (depends on 1)

The system of claim 1, further comprising a control interface configured to communicate with the plurality of transporting devices via an application programmable interface, the one or more processors being configured to cause the control interface to transmit the plurality of clearance commands and the third clearance command via the application programmable interface.

### Claim 8 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from a position of the first transporting device on the grid-like structure or a position of the second transporting device on the grid-like structure that there is the potential for the collision.

### Claim 9 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from an attribute of the first transporting device that there is the potential for the collision.

### Claim 10 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from one or more of (i) a missed message, (ii) a processing time, (iii) a clock sync, or (iv) a transporting device discrepancy with a physics model, that there is the potential for the collision.

### Claim 11 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from dimensions of the grid-like structure that there is the potential for the collision.

### Claim 12 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from a status report received from one of the plurality of transporting devices that there is the potential for the collision.

### Claim 13 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to generate one of the plurality of first clearance commands responsive to a status report received from one of the plurality of transporting devices.

### Claim 14 (depends on 1)

The system of claim 1, in combination with the facility, the plurality of containers, and the plurality of transporting devices.

### Claim 15 (depends on 1)

The system of claim 1, wherein the memory device is in electrical communication with the one or more processors and configured to store the plurality of paths.

### Claim 16 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from a position and a speed of at least one of the first transporting device or the second transporting device on the pathways that there is the potential for the collision.

### Claim 17 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine the plurality of paths so that all of the plurality of transporting devices may simultaneously travel on the pathways.

### Claim 18 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine the plurality of paths using an optimization algorithm.

### Claim 19 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine the plurality of paths so that the plurality of paths begin at starting points at which the plurality of transporting devices are located, each of the starting points being different from the other of the starting points.

### Claim 20 (depends on 1)

The system of claim 1, wherein the plurality of transporting devices comprise 15 transporting devices.

### Claim 21 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to control operations of the plurality of transporting devices in real time.

### Claim 22 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to fully automatically control operations of the plurality of transporting devices so that the plurality of transporting devices retrieve of a set of the plurality of containers arranged within the facility.

### Claim 23 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to generate a plurality of travel commands to instruct the plurality of transporting devices to travel on the pathways along the plurality of paths, the plurality of travel commands being different from the plurality of clearance commands.

### Claim 24 (depends on 23)

The system of claim 23, wherein the one or more processors are configured to generate one of the plurality of travel commands to instruct one of the plurality of transporting devices perform an operation with one of the plurality of containers.

### Claim 25 (depends on 1)

The system of claim 1, wherein one of the plurality of clearance commands is configured to cause the first transporting device to travel on the pathways for a predetermined period of time.

### Claim 26 (depends on 25)

The system of claim 25, wherein the predetermined period of time is a sufficient period of time for the first transporting device to come to rest without colliding with another of the plurality of transporting devices while the plurality of transporting devices travel along the plurality of paths.

### Claim 27 (depends on 1)

The system of claim 1, wherein the one or more processors are configured to determine from a measurement associated with the first transporting device that there is the potential for the collision.

### Claim 28 (depends on 27)

The system of claim 27, wherein the measurement comprises a speed of the first transporting device.

### Claim 29

A method for controlling movement of at least one transporting device arranged to transport at least one container, the method comprising:
determining, by one or more processors, a plurality of paths for a plurality of transporting devices to travel on pathways of a facility so that no two of the plurality of transporting devices have locations while traveling along the plurality of paths that would cause the plurality of transporting devices to overlap at a same time, the plurality of paths comprising a first path for traveling by a first transporting device of the plurality of transporting devices and a second path for traveling by a second transporting device of the plurality of transporting devices,
wherein the pathways form a grid-like structure above a plurality of containers arranged within the facility, the pathways comprising a first set of parallel rails extending in a first direction and a second set of parallel rails extending in a second direction transverse to the first direction in a substantially horizontal plane, at least some of the plurality of containers being stored in stacks,
wherein the plurality of transporting devices are configured to selectively move laterally in the first direction and the second direction on the pathways, at least some of the plurality of transporting devices being configured to transport the plurality of containers;
generating, by the one or more processors, a plurality of clearance commands for the plurality of transporting devices to cause the plurality of transporting devices to travel on the pathways along portions of the plurality of paths, the plurality of clearance commands comprising a first clearance command for the first transporting device;
determining, by the one or more processors, there is a potential for a collision between the first transporting device traveling along the first path and the second transporting device traveling along the second path;
in response to determining that there is the potential for the collision:
withholding, by the one or more processors, a second clearance command for the first transporting device that would cause the first transporting device to travel on the pathways along a portion of the first path,
determining, by the one or more processors, a revised path different from the first path for the first transporting device to travel on the pathways, and
generating, by the one or more processors, a third clearance command for the first transporting device to cause the first transporting device to travel on the pathways along a portion of the revised path; and
storing the plurality of clearance commands and the third clearance command to a memory device.

### Claim 30 (depends on 29)

The method of claim 29, wherein
the plurality of clearance commands indicate a permission for the plurality of transporting devices to travel on the pathways only along the portions of the plurality of paths,
the first clearance command is configured to cause the first transporting device to travel from a first location to a second location along the first path,
the third clearance command is configured to cause the first transporting device to travel from the second location to a third location along the revised path, and
the first path and the revised path have a common end location on the grid-like structure.
