ES2971741T3 - Sistema y método para el funcionamiento de vehículos autónomos - Google Patents

Sistema y método para el funcionamiento de vehículos autónomos Download PDF

Info

Publication number
ES2971741T3
ES2971741T3 ES21205177T ES21205177T ES2971741T3 ES 2971741 T3 ES2971741 T3 ES 2971741T3 ES 21205177 T ES21205177 T ES 21205177T ES 21205177 T ES21205177 T ES 21205177T ES 2971741 T3 ES2971741 T3 ES 2971741T3
Authority
ES
Spain
Prior art keywords
obstacle
autonomous vehicle
vehicle
computer system
task
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.)
Active
Application number
ES21205177T
Other languages
English (en)
Inventor
James Barabas
Andra Adams
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.)
Ocado Innovation Ltd
Original Assignee
Ocado Innovation Ltd
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 Ocado Innovation Ltd filed Critical Ocado Innovation Ltd
Application granted granted Critical
Publication of ES2971741T3 publication Critical patent/ES2971741T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0297Fleet control by controlling means in a control room
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D63/00Motor vehicles or trailers not otherwise provided for
    • B62D63/02Motor vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0027Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement involving a plurality of vehicles, e.g. fleet or convoy travelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0248Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/22Command input arrangements
    • G05D1/228Command input arrangements located on-board unmanned vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • G05D1/622Obstacle avoidance
    • G05D1/628Obstacle avoidance following the obstacle profile, e.g. a wall or undulated terrain
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/65Following a desired speed profile
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/69Coordinated control of the position or course of two or more vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/69Coordinated control of the position or course of two or more vehicles
    • G05D1/692Coordinated control of the position or course of two or more vehicles involving a plurality of disparate vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/20Static objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Electromagnetism (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Game Theory and Decision Science (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Chemical & Material Sciences (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Combustion & Propulsion (AREA)
  • Mathematical Physics (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

En el presente documento se divulgan sistemas y métodos para la operación de vehículos autónomos. Un sistema informático puede incluir un dispositivo de comunicación configurado para recibir una pluralidad de señales de eventos desde al menos un primer vehículo autónomo que está atravesando un camino, y un procesador en comunicación eléctrica con el dispositivo de comunicación y configurado para determinar si las señales de eventos son indicativas de un obstáculo en una parte del camino. El dispositivo de comunicación puede configurarse para recibir, desde al menos un segundo vehículo autónomo, al menos una característica del obstáculo captada por al menos un sensor del segundo vehículo autónomo, y transmitir, a al menos un tercer vehículo autónomo, al menos una tarea de despejar el obstáculo de la parte del camino. El procesador puede configurarse para determinar, basándose en la característica del obstáculo, al menos una tarea a transmitir por el dispositivo de comunicación. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Sistema y método para el funcionamiento de vehículos autónomos
CAMPO TÉCNICO
La presente divulgación está dirigida a sistemas y métodos para operar vehículos autónomos y, más específicamente, a sistemas y métodos para mitigar obstáculos en el funcionamiento de vehículos autónomos.
ANTECEDENTES
Los almacenes o tiendas para almacenar artículos suelen estar organizados en filas de estantes de almacenamiento. Las filas están separadas por pasillos para permitir que personas, carros, vehículos, etc. se puedan desplazar entre las filas para acceder a los estantes. En muchos casos, los pasillos pueden ser lo suficientemente anchos para el tránsito de peatones y/o vehículos en un sentido o en ambos sentidos. Debido a la naturaleza relativamente fija de los estantes de almacenamiento y al espacio limitado dentro de un pasillo, un obstáculo en un pasillo puede ser un impedimento significativo para el tránsito de personas y/o vehículos.
El documento TWI699636B describe un sistema de robot colaborativo. El sistema de robot colaborativo comprende una pluralidad de máquinas de prueba, una pluralidad de robots colaborativos, un primer sistema de control y un segundo sistema de control. Las máquinas de prueba están configuradas en una pluralidad de caminos. Cuando un primer robot colaborativo de los robots colaborativos en una zona de espera está asignado a una primera máquina de prueba de las máquinas de prueba que están en un primer camino, y el primer robot colaborativo es bloqueado por un segundo robot colaborativo de los robots colaborativos en el primer camino, el segundo sistema de control genera una orden de avance y transmite la orden de avance al primer sistema de control. El primer sistema de control transmite la orden de avance al segundo robot colaborativo para indicarle que abandone el primer camino.
COMPENDIO
En el presente documento se describen sistemas y métodos a modo de ejemplo para mitigar obstáculos en el funcionamiento de vehículos autónomos.
En un aspecto, la divulgación presenta un sistema informático para la operación de vehículos autónomos. El sistema informático incluye un dispositivo de comunicación configurado para recibir una pluralidad de señales de evento desde al menos un primer vehículo autónomo que está recorriendo un camino, y un procesador en comunicación eléctrica con el dispositivo de comunicación y configurado para determinar si las señales de evento son indicativas de un obstáculo en una parte del camino. El dispositivo de comunicación se puede configurar además para recibir, desde al menos un segundo vehículo autónomo, al menos una característica del obstáculo capturada por al menos un sensor del segundo vehículo autónomo, y transmitir, a al menos un tercer vehículo autónomo, al menos una tarea para retirar el obstáculo de la parte del camino. El procesador se puede configurar además para determinar, basándose en la característica del obstáculo, al menos una tarea a transmitir por el dispositivo de comunicación.
Varias realizaciones del sistema informático pueden incluir una o más de las siguientes características.
El dispositivo de comunicación se puede configurar además para transmitir la tarea a un controlador del tercer vehículo autónomo, en donde el controlador se puede configurar guiar, como respuesta a la recepción de la tarea, el tercer vehículo autónomo a la parte del camino para despejar el obstáculo de acuerdo con la tarea. El dispositivo de comunicación se puede configurar además para recibir una señal de que el obstáculo se ha retirado del camino. La pluralidad de señales de evento indican al menos uno de: (i) velocidad reducida del primer vehículo autónomo mientras atraviesa el camino; (ii) aumento de la congestión de vehículos o personas en el camino; (iii) desviación del primer vehículo autónomo del camino; o (iv) colisión con el obstáculo. El al menos un sensor puede incluir al menos uno de una cámara, un sensor LiDAR o un sensor de profundidad. La al menos una característica del obstáculo puede incluir al menos una de entre el tamaño del obstáculo, la forma del obstáculo, el peso del obstáculo o el tipo de obstáculo.
Al menos dos del grupo formado por el primer vehículo autónomo, el segundo vehículo autónomo y el tercer vehículo autónomo son un mismo vehículo autónomo. La al menos una tarea puede estar incluida en una lista de tareas para el tercer vehículo autónomo. El procesador, al determinar si las señales de evento son indicativas de un obstáculo, se puede configurar además para determinar si las señales de evento son indicativas de evento del vehículo que no están dentro de un conjunto de evento definidos asociados con el recorrido del camino. El procesador, al determinar al menos una tarea a transmitir por el dispositivo de comunicación, se puede configurar además para comparar la característica del obstáculo con una característica de un obstáculo conocido.
En otro aspecto, la divulgación presenta un método implementado por ordenador para la operación de vehículos autónomos. El método puede incluir recibir, mediante un sistema informático, una pluralidad de señales de evento desde al menos un primer vehículo autónomo que está atravesando un camino y determinar, mediante el sistema informático, si las señales de evento son indicativas de un obstáculo en una parte del camino. El método puede incluir recibir, por parte del sistema informático de al menos un segundo vehículo autónomo, al menos una característica del obstáculo captada por al menos un sensor del segundo vehículo autónomo; determinar, mediante el sistema informático y basándose en las características del obstáculo, al menos una tarea para retirar el obstáculo de la parte del camino; y transmitir, mediante el sistema informático, la tarea a al menos un tercer vehículo autónomo.
Varias realizaciones del método pueden incluir una o más de las siguientes características.
La tarea se puede transmitir a un controlador del tercer vehículo autónomo, y puede incluir además hacer que el controlador, como respuesta a la recepción de la tarea, guíe el tercer vehículo autónomo hasta la parte del camino para despejar el obstáculo de acuerdo con la tarea. El método puede incluir recibir, por parte del sistema informático, una señal de que el obstáculo ha sido retirado del camino. La pluralidad de señales de evento indican al menos uno de: (i) velocidad reducida del primer vehículo autónomo mientras atraviesa el camino; (ii) aumento de la congestión de vehículos o personas en el camino; (iii) desviación del primer vehículo autónomo del camino; o (iv) colisión con el obstáculo. El al menos un sensor puede incluir al menos uno de una cámara, un sensor LiDAR o un sensor de profundidad. La al menos una característica del obstáculo puede incluir al menos una de entre el tamaño del obstáculo, la forma del obstáculo, el peso del obstáculo o el tipo de obstáculo. Al menos dos del grupo formado por el primer vehículo autónomo, el segundo vehículo autónomo y el tercer vehículo autónomo son un mismo vehículo autónomo. La al menos una tarea está incluida en una lista de tareas para el tercer vehículo autónomo. Determinar si las señales de evento son indicativas de un obstáculo puede incluir determinar si las señales de evento son indicativas de evento del vehículo que no están dentro de un conjunto de evento definidos asociados con el recorrido del camino.
En otro aspecto, la divulgación presenta un medio legible por ordenador no transitorio que tiene instrucciones almacenadas en el mismo que, cuando son ejecutadas por uno o más procesadores de ordenador, hacen que los procesadores de ordenador realicen operaciones que incluyen recibir una pluralidad de señales de evento desde al menos un primer vehículo autónomo que está recorriendo un camino, y determinar si las señales de evento son indicativas de un obstáculo en una parte del camino. Las operaciones pueden incluir además recibir, desde al menos un segundo vehículo autónomo, al menos una característica del obstáculo captada por al menos un sensor del segundo vehículo autónomo; determinar, basándose en las características del obstáculo, al menos una tarea para retirar el obstáculo de la parte del camino; y transmitir la tarea a al menos un tercer vehículo autónomo.
Por consiguiente, se proporciona un método, un sistema informático y un programa informático como se detalla en las reivindicaciones siguientes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
En los dibujos, los caracteres de referencia similares generalmente se refieren a las mismas partes en las diferentes vistas. Además, los dibujos no están necesariamente a escala, sino que generalmente se hace hincapié en ilustrar los principios de los sistemas y métodos descritos en el presente documento. En la siguiente descripción, se describen diversas realizaciones con referencia a los siguientes dibujos.
La Figura 1A es un modelo de una realización de un vehículo autónomo configurado para recoger pedidos. La Figura 1B es un modelo de otra realización de un vehículo autónomo configurado para recoger pedidos. La Figura 2 es un diagrama de una realización de un sistema para mitigar obstáculos mediante vehículos autónomos.
La Figura 3 es un diagrama de flujo de una realización de un método para mitigar obstáculos mediante vehículos autónomos.
La Figura 4 es un diagrama de una realización de una configuración de almacén en donde son operados uno o más vehículos autónomos para mitigar obstáculos en el almacén.
La Figura 5 es un diagrama de una realización de un flujo de trabajo para mitigar obstáculos en el funcionamiento de un vehículo autónomo.
La Figura 6 es un diagrama de bloques de una realización de un sistema informático que se puede utilizar para implementar los sistemas y métodos descritos en el presente documento.
DESCRIPCIÓN DETALLADA
Los obstáculos presentes en los caminos de los vehículos autónomos pueden ser perjudiciales para el funcionamiento productivo y eficiente de un almacén automatizado (o un espacio de almacenamiento en donde se organizan artículos para su recogida y/o entrega, por ejemplo, una tienda minorista, una tienda de comestibles, un hospital, una escuela, una oficina, etc.). Los vehículos autónomos y/o sistemas informáticos se pueden configurar para inferir la existencia de obstáculos en estos caminos y tomar medidas para mitigar (por ejemplo, mover, retirar, etc.) los obstáculos.
En diversas realizaciones, uno o más vehículos autónomos se pueden dirigir desde una ubicación en un almacén a otra para realizar recogida y/o almacenamiento. Para llegar a un lugar de destino, los vehículos se pueden configurar para recorrer caminos a través de pasillos prescritos o determinados sobre la marcha. Como se describe más adelante, los vehículos pueden tener velocidades predeterminadas y/o eficiencia operativa esperada que pueden verse dificultadas por obstáculos en sus caminos.
La tecnología descrita en el presente documento se puede emplear en carros móviles del tipo descrito en, por ejemplo, la patente de EE. UU. No. 9.834.380, expedida el 5 de diciembre de 2017 y titulada "Warehouse Automation Systems and Methods,", la cual se incorpora en su totalidad al presente documento como referencia y se describe en parte a continuación.
Aplicación a modo de ejemplo a carros de almacén autónomos
La Figura 1A representa un sistema de carro mejorado 100 que incluye un carro mejorado 102 (por ejemplo, un vehículo autónomo). Como se ilustra, uno o más carros mejorados, a menudo denominados en la industria carros de recogida, pueden trabajar junto con uno o más trabajadores del almacén 104 (también denominados asociados) para mover artículos de inventario por un almacén. Los carros mejorados 102 están destinados a ayudar en la mayoría de las tareas del almacén, tales como recoger, reponer existencias, mover, clasificar, contar o verificar artículos (por ejemplo, productos). Estos carros 102 pueden mostrar información al asociado 104 mediante la utilización de una interfaz de usuario (por ejemplo, pantalla) 106 y/o indicadores visuales y/o audibles a bordo que mejoran el desempeño de los asociados 104. El carro 102 puede ser propulsado por un motor (por ejemplo, un motor eléctrico) que está conectado a una fuente de energía (por ejemplo, una batería, un supercondensador, etc.), de modo que el carro 102 se mueve de forma autónoma y no requiere ser empujado ni tirado por una fuerza humana u otra fuerza. El carro 102 se puede desplazar a un área de carga para cargar su batería o baterías.
Haciendo referencia aún a la Figura 1 A, los carros mejorados 102 se pueden configurar para transportar uno o muchos contenedores de almacenamiento 108 similares o distintos, a menudo en forma de bolsones o cajas, que se pueden utilizar para contener uno o más productos diferentes. Estos contenedores de almacenamiento 108 se pueden retirar del carro mejorado 102. En algunos casos, cada contenedor 108 se puede utilizar como una ubicación de recogida separada (es decir, un contenedor 108 es un solo pedido). En otros casos, los contenedores 108 se pueden utilizar para la selección de lotes (es decir, cada contenedor 108 puede contener múltiples pedidos completos o parciales). Cada contenedor 108 se puede asignar a una o muchas estaciones diferentes para clasificación y procesamiento posterior a la selección. En una realización, uno o más de los contenedores 108 están dedicados a la recogida por lotes de múltiples tipos de productos y otro uno o más contenedores 108 están dedicados a la recogida de múltiples cantidades de un solo producto (por ejemplo, para pedidos que solo tienen un artículo). Esta recogida única permite al almacén omitir la clasificación secundaria y entregar los productos directamente a una estación de embalaje. En otra realización, uno o más de los contenedores 108 están asignados a la preparación de pedidos (por ejemplo, para pedidos potencialmente urgentes) y uno o más de los contenedores 108 están asignados a la preparación de lotes (por ejemplo, para pedidos de menor coste o menos urgentes). En otra realización adicional, uno o más de los contenedores 108 transportan producto que se utilizará para reabastecer el producto en los lugares de almacenamiento. Otra opción es que el carro mejorado 102 mueva productos y/o envíos por todo el almacén según sea necesario entre diferentes estaciones, tales como estaciones de embalaje y de envío. En otra implementación más, uno o más de los contenedores 108 se dejan vacíos para ayudar a contar el producto que entra y luego sale del contenedor 108 como parte de una tarea de conteo cíclico que se lleva a cabo regularmente en los almacenes para la gestión de inventario. Las tareas se pueden completar en un modo dedicado a un tipo de tarea o se pueden intercalar entre diferentes tipos de tareas. Por ejemplo, un asociado 104 puede estar recogiendo productos en el contenedor "uno" en el carro mejorado 102 y después se le puede indicar que tome productos del contenedor "dos" en el carro mejorado 102 y los guarde en el mismo pasillo.
La Figura 1B es una realización alternativa del carro mejorado 102 y se muestra (para facilitar la comprensión) sin que los contenedores de almacenamiento 108 estén presentes. Como antes, el carro mejorado 102 incluye la pantalla 106 e indicadores de iluminación 110, 112. En funcionamiento, los contenedores de almacenamiento 108 pueden estar presentes en el carro mejorado 102 representado en la Figura 1B. Haciendo referencia a ambas Figuras 1A y 1B, el carro mejorado 102 puede incluir primera y segunda plataformas 150, 154 para soportar una pluralidad de contenedores 108 capaces de recibir productos. Al menos un soporte 158 puede soportar la primera plataforma 150 por encima de la segunda plataforma 154. El al menos un soporte 158 puede estar situado sustancialmente centralmente a lo largo de las longitudes respectivas 162, 166 de la primera y segunda plataformas 150, 154 entre los extremos delantero y trasero 170, 174 del mismo y puede soportar la primera y segunda plataformas 150, 154 en ubicaciones dispuestas dentro de las partes interiores de la primera y segunda plataformas 150, 154. Como se ilustra en la Figura 1B, el extremo delantero 170 del carro 102 puede definir un recorte 156. Puede haber uno o más sensores (por ejemplo, sensores de detección y alcance de luz (LiDAR)) alojados dentro del recorte 156. El recorte 156 permite que los sensores vean y detecten objetos delante y al lado de (por ejemplo, más de 180° alrededor) del carro 102.
La siguiente descripción se centra en la utilización de vehículos autónomos, tales como el carro mejorado 102, en un entorno de almacén, por ejemplo, para guiar a los trabajadores por el suelo de un almacén y transportar inventario o pedidos de clientes para su envío. Sin embargo, los vehículos autónomos de cualquier tipo se pueden utilizar en muchos entornos diferentes y para diversos fines, incluidos, entre otros: guiar a los compradores o almacenar inventario en una tienda minorista, conducir pasajeros en las carreteras, entregar alimentos y medicinas en hospitales, transportar carga en puertos de envío, limpieza de residuos, etc. Los vehículos autónomos se pueden emplear en un entorno similar a un almacén abierto al público (por ejemplo, grandes superficies o mayoristas). Esta divulgación, que incluye, entre otros, la tecnología, los sistemas y los métodos descritos en este documento, es igualmente aplicable a cualquier tipo de vehículo autónomo.
Obstáculos en los caminos de los vehículos
En un entorno de almacén (o en una tienda minorista, una tienda de comestibles, una sala de hospital, etc.), un sistema informático (por ejemplo, un sistema informático interno o externo a un vehículo autónomo 102) puede determinar un camino para el vehículo autónomo, permitiendo así que el vehículo recoja artículos situados en todo el almacén de acuerdo con una lista de selección (para un pedido de un cliente) o una lista de tareas (por ejemplo, para reabastecer artículos, mover artículos, retirar obstáculos, etc.). Un controlador puede guiar el vehículo a través de una secuencia optimizada de ubicaciones dentro del almacén, de modo que un trabajador (también conocido como asociado o recogedor) o un dispositivo mecánico (por ejemplo, un brazo robótico acoplado al vehículo autónomo) pueda colocar físicamente un artículo en un contenedor (también conocido como bolsón) para que lo transporte el vehículo. El controlador puede ser un controlador central (por ejemplo, parte de un sistema informático remoto), un controlador de vehículo en el vehículo autónomo, o puede incluir dos o más controladores (por ejemplo, parte de un sistema informático remoto y/o vehículo autónomo) configurados para operar juntos (por ejemplo, a través de un enlace de comunicación). Por ejemplo, un controlador central puede enviar instrucciones a un controlador de vehículo para que guíe el vehículo autónomo por un almacén para reabastecer artículos en los estantes o recoger artículos para un pedido de un cliente. En otro ejemplo, el controlador del vehículo se puede configurar para guiar el vehículo autónomo para mover artículos por un almacén. Como se analizó anteriormente, el almacén puede estar organizado en una serie de pasillos, en donde cada pasillo tiene suficiente espacio para que uno o más vehículos lo recorran mientras recogen artículos en estantes o estanterías en uno o más lados del pasillo. En consecuencia, los pasillos normalmente se mantienen libres de obstáculos importantes para permitir un movimiento rápido y fácil de personas y/o vehículos.
En algunos casos, un obstáculo puede bloquear una ubicación particular en el camino del vehículo autónomo (por ejemplo, dentro de un pasillo). Los obstáculos pueden ser de diferentes tamaños, pesos, formas o materiales. Por ejemplo, los obstáculos en el entorno de un almacén pueden incluir desechos, material de embalaje (por ejemplo, cartón, cinta adhesiva, espuma de embalaje, etc.), derrames de líquidos (por ejemplo, de productos de limpieza, productos en estantes, goteras en el techo, etc.), contenedores 108, piezas de vehículos autónomos, etc. En otro ejemplo, los obstáculos en un entorno minorista pueden incluir carteles de papel, recibos, carritos de compras, cestas de compras, artículos caídos, etc.
Algunos obstáculos, por ejemplo, un palé de madera o un derrame de líquido, pueden ser lo suficientemente grandes o simplemente intransitables como para bloquear el paso de los vehículos autónomos 102 en un pasillo determinado. En tales casos, uno o más sensores del vehículo 102 pueden detectar el obstáculo y detenerse a cierta distancia. Algunos obstáculos, por ejemplo, cables o cintas, pueden ser pequeños, de modo que un trabajador que acompañe al vehículo pueda pasa por encima de los mismos o recogerlos. Sin embargo, incluso los obstáculos más pequeños pueden perjudicar el funcionamiento eficiente del almacén al impedir o ralentizar la recogida de artículos y/o reabastecimiento de inventario por parte de los vehículos autónomos a lo largo de su camino. Por ejemplo, algunos objetos pequeños pueden incluso quedar pegados a la parte inferior del vehículo 102, requiriendo la intervención de una persona para retirarlos.
Sistemas informáticos para la operación de vehículos autónomos
La Figura 2 ilustra un sistema 200 configurado para mitigar obstáculos en el funcionamiento de un vehículo autónomo. El sistema 200 puede incluir un sistema informático remoto 202 configurado para acoplarse directa o indirectamente a uno o más vehículos autónomos 102a, 102b, 102c (denominados colectivamente 102). Por ejemplo, el sistema informático remoto 202 se puede comunicar directamente con el sistema informático 206 de un vehículo autónomo 102 (por ejemplo, a través del canal de comunicación 208). Adicional o alternativamente, el sistema informático remoto 202 se puede comunicar con uno o más vehículos autónomos 102 a través de un dispositivo de red de la red 210. En algunas realizaciones, el sistema informático remoto 202 se puede comunicar con un primer vehículo autónomo (por ejemplo, el vehículo 102a) a través de un segundo vehículo autónomo (por ejemplo, vehículo 102b).
El sistema informático remoto a modo de ejemplo 202 puede incluir un procesador 212 conectado a un dispositivo de comunicación 214 configurado para recibir y transmitir mensajes y/o instrucciones. El sistema informático de vehículo 206 de ejemplo puede incluir un procesador 216 conectado a un dispositivo de comunicación 218 y un controlador 220. El dispositivo de comunicación del vehículo 218 puede estar acoplado al dispositivo de comunicación remoto 214. El procesador del vehículo 216 se puede configurar para procesar señales desde el dispositivo de comunicación remoto 214 y/o el dispositivo de comunicación del vehículo 218. El controlador 220 se puede configurar para enviar señales de control a un sistema de navegación y/o a otros componentes del vehículo 102, como se describe más detalladamente en el presente documento.
Como se expone en el presente documento y a menos que se especifique lo contrario, el término "sistema informático" puede referirse al sistema informático remoto 202 y/o al sistema informático del vehículo 206. El sistema informático puede recibir y/u obtener información sobre un pedido de un cliente (por ejemplo, desde otro sistema informático o a través de una red), que incluye la lista de artículos, la prioridad del pedido en relación con otros pedidos, la fecha de envío prevista, si el pedido se puede enviar incompleto (sin todos los artículos pedidos) y/o en envíos múltiples, etc. Un procesador (por ejemplo, del sistema 202 y/o del sistema 206) puede procesar el pedido del cliente para determinar una camino óptimo para que uno o más vehículos autónomos 102 recojan artículos en una "lista de recogida" para el pedido. Por ejemplo, se puede asignar una lista de recogida de artículos a un único vehículo o a dos o más vehículos 102.
El camino determinado puede ser transmitido al controlador 220 del vehículo 102. El controlador 220 puede guiar el vehículo 102 en una secuencia optimizada de paradas (también denominada desplazamiento) dentro del almacén para recoger los artículos. En una parada determinada, un trabajador cerca del vehículo 102 puede colocar físicamente el artículo en un contenedor 108 para que lo transporte el vehículo 102. Alternativa o adicionalmente, el vehículo autónomo 102 puede incluir un aparato (por ejemplo, un brazo robótico) configurado para recoger artículos en un contenedor 108.
Sistemas y métodos para mitigar obstáculos
La Figura 3 es un diagrama de flujo de un método ejemplar 300 para mitigar obstáculos en la operación de un vehículo autónomo. La Figura 4 ilustra una configuración de almacén a modo de ejemplo 400 en donde se emplean uno o más vehículos autónomos 102 para mitigar obstáculos. La Figura 5 ilustra un flujo de trabajo para mitigar obstáculos en la operación de vehículos autónomos. En aras de la claridad y la concisión, las Figuras 3-5 se analizan juntas en el presente documento.
Se pueden configurar uno o más sistemas que habilitan el almacén automatizado para detectar y/o mitigar obstáculos. Estos sistemas pueden incluir (i) un sistema informático remoto configurado para gestionar uno o más componentes del almacén, (ii) vehículos autónomos configurados para recoger artículos para pedidos de clientes o reabastecimiento de inventario, y/o (iii) vehículos autónomos especializados, como se describe más adelante. El sistema informático remoto se puede configurar para comunicarse con los respectivos sistemas informáticos de los vehículos autónomos, por ejemplo, para transmitir caminos para que los vehículos sean guiados, tareas para completar, etc.
En el paso 302 del método, un sistema informático (por ejemplo, el sistema informático remoto 202 y/o el sistema informático del vehículo 206) puede recibir señales de uno o más vehículos 102 en un camino particular 402 en un pasillo 404 (por ejemplo, el pasillo 404a o 404b) del almacén 400. Estas señales se pueden asociar con eventos que ocurren en el camino particular 402 o pasillo 404 que puede indicar la presencia de un obstáculo 406 (por ejemplo, el obstáculo 406a o 406b) (proceso de flujo de trabajo 502). Uno o más de los siguientes tipos de señales de evento pueden ser generados por un vehículo 102 y/o recibidos por el sistema informático.
En algunas realizaciones, las señales de evento pueden incluir datos de uno o más sensores del vehículo. Por ejemplo, un sensor de vehículo puede ser una cámara, un sensor LiDAR, un sensor de profundidad, etc. En algunas realizaciones, las señales de evento pueden incluir una o más imágenes, vídeo, audio, información de profundidad, etc. En algunas realizaciones, el vehículo 102 puede estar equipado con una cámara estéreo configurada para capturar información visual y de profundidad para el campo de visión del vehículo (por ejemplo, a través de los recortes 156).
Según una realización de la invención, las señales de evento indican una velocidad del vehículo más lenta que la esperada o prestablecida en el camino 402. Por ejemplo, el sistema informático puede asignar límites de velocidad a uno o más caminos y/o pasillos. Un vehículo 102 se puede configurar para operar a, o por debajo de, los límites de velocidad según el camino 402 o pasillo 404 por el que se desplaza el vehículo. En algunas realizaciones, el sistema informático (por ejemplo, 202 o 206) puede comparar la velocidad real con los límites de velocidad asignados del camino o pasillo (o una parte del mismo). Por ejemplo, los límites de velocidad asignados pueden variar según diferentes partes del mismo camino o pasillo, pueden depender del radio de giro requerido para que el vehículo se mueva entre caminos o pasillos, etc. Si la velocidad real está por debajo de un umbral aceptable por debajo de la velocidad asignada (por ejemplo, 5% por debajo, 10% por debajo, etc. de la velocidad asignada), entonces se puede generar una señal de evento en consecuencia.
En otro ejemplo, el vehículo 102 puede tener un límite de velocidad interno que puede ser igual o diferente de los límites de velocidad del camino o pasillo. Este límite de velocidad interno se puede determinar basándose en la condición operativa particular (por ejemplo, antigüedad, condición mecánica, nivel de carga, peso de la carga transportada por el vehículo, etc.) del vehículo 102. En algunas realizaciones, el límite de velocidad interno máximo puede basarse en la distancia entre el vehículo y el objeto inesperado más cercano detectado por los sensores. El sistema informático 206 del vehículo 102 se puede configurar para comparar el límite de velocidad interno con la velocidad real del vehículo 102 para determinar si se debe generar una señal de evento. En algunas realizaciones, un dispositivo de comunicación 218 del vehículo 102 se puede configurar para informar de su límite de velocidad interno al sistema informático remoto 202 de forma periódica, intermitente, a petición, etc. Además, el vehículo 102 puede informar de su velocidad real al sistema informático remoto 202 de forma continua, intermitente, a petición, etc. Por ejemplo, el dispositivo 218 puede informar de la velocidad real una vez por segundo, por minuto, cada 3 minutos, cada 5 minutos, cada 10 minutos, etc. El sistema informático remoto 202 puede comparar una velocidad real del vehículo 102 con un informe del límite de velocidad interno para determinar si se debe generar una señal de evento. Si la velocidad real está por debajo de un umbral aceptable por debajo del límite de velocidad interno (por ejemplo, 5 % por debajo, 10 % por debajo, etc. del límite de velocidad interno), entonces se puede generar una señal de evento en consecuencia.
En algunos casos, las señales de evento pueden indicar una recogida o reposición ineficiente de artículos por parte de los vehículos 102. Esto puede ocurrir si los vehículos 102 están desacelerando para dar la vuelta o desplazarse por caminos alternativas debido a la presencia de un obstáculo 406a. Por ejemplo, un sistema informático puede determinar y almacenar un nivel promedio de eficiencia para recoger o reabastecer artículos en un almacén 400 mediante un vehículo particular 102. Alternativa o adicionalmente, se puede determinar un umbral predeterminado de eficiencia para los vehículos 102 (por ejemplo, de un tipo de vehículo, para caminos designados 402, en una configuración de almacén particular 400, etc.). El nivel de eficiencia de un vehículo en un día particular se puede comparar con el nivel promedio o con el umbral predeterminado para determinar si el nivel particular es menos eficiente. En consecuencia, la señal de evento puede incluir la comparación de eficiencia y/o del nivel particular de eficiencia.
Según una realización de la invención, las señales de evento indican una mayor congestión de vehículos y/o trabajadores humanos. Una mayor congestión puede indicar que los vehículos están dando marcha a atrás debido a la presencia de un obstáculo 406. Por ejemplo, un sistema informático puede determinar y almacenar un nivel de congestión promedio para un camino 402 o pasillo 404 particular. Alternativa o adicionalmente, se puede determinar un umbral predeterminado de nivel de congestión particular para el camino 402 o el pasillo 404. El nivel de congestión de un momento o día particular se puede comparar con el nivel de congestión promedio o el umbral predeterminado. En algunas realizaciones, el nivel de congestión se puede determinar mediante una comparación de las posiciones de dos o más vehículos 102 en el camino 402 o en el pasillo 404. En algunas realizaciones, el nivel de congestión se puede determinar basándose en información visual de imágenes o videos capturados por una o más cámaras y/o en información de profundidad desde uno o más sensores de profundidad de los vehículos 102. Por ejemplo, un primer vehículo puede capturar información visual o de profundidad de un segundo vehículo (o humano) en el mismo camino 402 o pasillo 404. La información visual o de profundidad se puede procesar para determinar una distancia entre el primer y el segundo vehículo.
Según una realización de la invención, las señales de evento indican una desviación de un vehículo 102 del camino 402. La desviación puede indicar la presencia de un obstáculo en el camino del vehículo. Por ejemplo, el vehículo 102 puede estar en un camino prestablecido 402 y se puede desviar del camino 402 para rodear un obstáculo 406a a través de un camino alternativo 408. Alternativamente, una desviación puede incluir que el vehículo 102 dé la vuelta para tomar un camino diferente 410.
En algunas realizaciones, las señales de evento pueden indicar intervención humana en la operación del vehículo. Por ejemplo, un humano puede detener, disminuir la velocidad o cambiar el camino del vehículo 102 al ver un obstáculo interactuando con la interfaz de usuario 106. En algunas realizaciones, un tipo de señal de evento puede ser un desencadenante de al menos otra señal de evento. Por ejemplo, una primera señal de evento puede indicar que el vehículo 102 está desacelerando en un camino particular 402. La transmisión de la primera señal de evento puede desencadenar un proceso en el sistema informático 206 del vehículo 102 para capturar datos del sensor (por ejemplo, mediante un sensor de cámara, por un sensor LiDAR, por un sensor de profundidad, etc.) del entorno del vehículo. Por ejemplo, una primera señal de evento puede indicar un aumento de la congestión, lo que puede desencadenar el registro de datos del sensor durante una determinada duración (por ejemplo, 0,5, 1,3, 5, 10 minutos o más) o distancia recorrida (por ejemplo, 6 m (20 pies), 15 m (50 pies), 30 m (100 pies) o más) por el vehículo 102. Estos datos del sensor se pueden transmitir (por ejemplo, mediante el dispositivo de comunicación 218) como una segunda señal de evento al sistema informático (por ejemplo, el sistema informático 202).
En el paso 304, el sistema informático puede procesar una o más señales de evento recibidas para determinar si hay un obstáculo en el camino (por ejemplo, en o cerca de una ubicación particular en el camino). Por ejemplo, el procesador (por ejemplo, el procesador 212 y/o 216) puede procesar una señal de evento que incluya información visual utilizando técnicas de procesamiento de imágenes para determinar la presencia de un obstáculo. En otro ejemplo, el procesador puede procesar una señal de evento que indica la velocidad reducida de un vehículo 102 para determinar si el vehículo 102 está desacelerando o deteniéndose debido a un obstáculo.
En algunos casos, dos o más situaciones del mismo tipo de señal de evento pueden ser indicativas de un obstáculo. Por ejemplo, se puede determinar un obstáculo si un vehículo autónomo reduce la velocidad cada vez que recorre el mismo tramo del camino. Cada vez, el vehículo 102 puede transmitir una señal de evento que indique la velocidad más lenta. En algunas realizaciones, el procesador puede comparar las señales de evento con al menos otra señal de evento para categorizar o agrupar el tipo de señal de evento para un camino 402 y/o pasillo 404a particulares. Si hay varias señales de evento iguales o similares por encima de un umbral, entonces el procesador puede determinar la presencia de un obstáculo. Por ejemplo, haciendo referencia a la Figura 5, si el vehículo 102 recorre el camino 402 cuatro veces en un período determinado y, cada vez, se desvía del camino 402 (por ejemplo, a través del camino 408 o el camino 410) al acercarse al obstáculo 406a, entonces se producirán cuatro señales de evento que indican el camino desviado se transmiten al sistema informático. Un procesador del sistema informático puede comparar las cuatro señales de evento recibidas con un umbral (por ejemplo, tres, cuatro, cinco señales de evento, etc.) para determinar si hay un obstáculo presente.
En otros casos, dos o más vehículos autónomos 102 que informan del mismo o similar evento pueden indicar un obstáculo. Por ejemplo, se puede determinar un obstáculo si múltiples vehículos autónomos desaceleran en la misma parte del camino 402. En cada escenario, la velocidad de los vehículos autónomos puede ser recibida y/o monitorizada por el sistema informático y comparada con velocidades históricas para los vehículos particulares y/o para la ubicación particular en el camino. Por ejemplo, a los caminos dentro del almacén se les pueden asignar "límites de velocidad" o rangos de velocidad que los vehículos están configurados para cumplir. Si se determina que el vehículo se desplaza por debajo del límite o rango, el sistema informático puede inferir que existe un obstáculo en el camino.
En algunas realizaciones, la recepción de las señales de evento puede desencadenar la recopilación y/o el registro de datos por parte de uno o más vehículos en el camino particular. Un vehículo autónomo puede emplear uno o más sensores a bordo (por ejemplo, cámara(s), LiDAR, etc.) para capturar datos de un obstáculo. Por ejemplo, la(s) cámara(s) del vehículo puede(n) recopilar una o más imágenes a lo largo de una parte particular del camino. En otro ejemplo, un sensor de profundidad del vehículo puede recopilar datos a lo largo de una parte particular del camino. Los datos del sensor se pueden procesar para determinar las características del obstáculo (por ejemplo, su tamaño, forma, peso, tipo, material, etc.) (proceso de flujo de trabajo 504). Por ejemplo, un procesador puede emplear diversas técnicas (por ejemplo, técnicas de aprendizaje automático, técnicas de geometría sustractiva, etc.) para determinar las características del obstáculo.
Según las características capturadas del obstáculo, el sistema informático puede determinar una o más tareas para mitigar o retirar el obstáculo del camino. Por ejemplo, el sistema puede determinar si el obstáculo puede ser superado de forma segura por un trabajador humano (proceso de flujo de trabajo 506). En algunas realizaciones, para determinar si un trabajador 104 puede manejar el obstáculo de forma segura, el sistema informático puede comparar una imagen del obstáculo con imágenes de obstáculos conocidos (por ejemplo, carro, cesta, producto, etc.). Cada uno de estos obstáculos conocidos puede ser etiquetado como seguro o inseguro para un manejo normal. En algunas realizaciones, el sistema puede determinar si el obstáculo es seguro para manejarlo en función del tamaño del obstáculo determinado a partir de la imagen o del vídeo.
Si el obstáculo puede ser superado (por ejemplo, el obstáculo es lo suficientemente pequeño, ligero, no tóxico, etc.) por un trabajador humano en las proximidades del obstáculo (por ejemplo, un recogedor, un reponedor, etc.), el sistema puede determinar si se requiere un contenedor para transportar y/o retirar el obstáculo (proceso de flujo de trabajo 508). El sistema informático puede enviar una señal con instrucciones a una interfaz de usuario 106 (por ejemplo, de un vehículo autónomo u otro sistema en red) (proceso de flujo de trabajo 510). Si se necesita un contenedor 108 para superar el obstáculo, el sistema informático puede transmitir una señal a un controlador de un vehículo autónomo en las proximidades del obstáculo para ser guiado hasta la ubicación del obstáculo (proceso de flujo de trabajo 512). En algunos casos, la interfaz de usuario 106 puede ser del mismo vehículo autónomo que transmitió señales de evento en el camino y/o recopiló datos de las características del obstáculo. En algunos casos, la tarea también se puede enviar a una o más interfaces de usuario adicionales para involucrar al menos a un trabajador humano adicional en la retirada del obstáculo. La interfaz de usuario 106 se puede configurar para recibir una o más entradas procedentes del trabajador que indican que el obstáculo se superó con éxito, una entrada que indica que el obstáculo no se superó, una entrada que solicita asistencia especial con el obstáculo, etc.
En algunos casos, es posible que el obstáculo no pueda ser superado fácilmente debido a su tamaño, forma, peso, tipo, toxicidad, etc. Si, por ejemplo, un trabajador humano cercano no puede superar el obstáculo, la(s) tarea(s) se puede(n) transmitir a una interfaz de usuario de otro vehículo autónomo y/o a la interfaz de usuario de un sistema informático remoto (por ejemplo, el sistema 202) (proceso de flujo de trabajo 514). En algunos casos, la tarea se puede transmitir a un controlador de otro vehículo autónomo para guiar hasta la ubicación del obstáculo (proceso de flujo de trabajo 516). En algunas realizaciones, la tarea se puede transmitir a un vehículo autónomo que se encuentra dentro de una cierta distancia de recorrido desde el obstáculo, un vehículo que está siendo guiado en dirección hacia el obstáculo, un vehículo con suficiente espacio a bordo para el obstáculo (por ejemplo, en función de las características del obstáculo) y/o un vehículo con tareas de menor prioridad. En algunas realizaciones, si se identifica un vehículo 102 que cumple los criterios y el vehículo está en el proceso de recoger artículos para un pedido de un cliente, el sistema informático puede enviar al vehículo la tarea de limpieza, retirar el pedido correspondiente al contenedor vacío en el vehículo e integrar ese pedido nuevamente en el grupo principal de pedidos para incorporarlos en futuros vehículos disponibles para la selección del cliente. En algunas realizaciones, el procesador puede realizar un análisis de costes para determinar si un vehículo 102 debe priorizar una tarea de retirada de obstáculos sobre un pedido de un cliente. Por ejemplo, debido a que algunos obstáculos pueden producir ineficiencia o bloquear completamente varios vehículos (y, por lo tanto, cada uno de los pedidos de sus clientes), dichos obstáculos pueden tener prioridad sobre los pedidos de los clientes. Otros tipos de obstáculos pueden tener menor prioridad según el análisis de costes.
Por ejemplo, el otro vehículo autónomo puede ser un vehículo especializado o designado para retirar obstáculos, un vehículo más grande, un vehículo con un contenedor más grande, un vehículo con un contenedor particular (por ejemplo, para líquidos, etc.). En algunas realizaciones, el obstáculo puede ser demasiado grande o tener una forma tal que se pueda utilizar un estante o nivel completo (por ejemplo, la plataforma 150 o 154) de un vehículo 102 para transportar el obstáculo. En otro ejemplo, la tarea se puede transmitir a una interfaz de usuario a la que acceden trabajadores distintos de los recogedores o reponedores, por ejemplo, trabajadores a los que se asignan actividades de limpieza o mantenimiento. Por ejemplo, estos trabajadores pueden especializarse en retirar obstáculos y/o manejar otras actividades de mantenimiento. Estos trabajadores podrán acompañar a otro tipo de vehículos autónomos o robots configurados para retirar obstáculos.
En algunas realizaciones, la tarea de retirada de obstáculos se puede integrar en una lista de tareas de trabajo habitual para un vehículo autónomo (proceso de flujo de trabajo 518). Por ejemplo, la ubicación del obstáculo se puede incluir como una parada para el vehículo entre sus varias paradas para recoger artículos para un pedido de un cliente y/o reabastecer artículos dentro del almacén. La ubicación del obstáculo se puede utilizar para determinar un camino óptimo para el vehículo 102, similar a determinar un camino óptimo al recoger artículos para un pedido de un cliente. La prioridad relativa de la tarea de retirada de obstáculos en comparación con las órdenes de los clientes u otras tareas de trabajo en el sistema se puede configurar en función del tamaño del obstáculo y/o el nivel de desempeño deficiente de los vehículos cerca del obstáculo como se midió inicialmente. En algunas realizaciones, el sistema informático puede generar una tarea específica para superar el obstáculo. Tal tarea de retirada de obstáculos puede incluir información que incluya al menos el tipo de trabajador requerido, el tipo de vehículo requerido, el tamaño o forma del contenedor requerido, el tipo de obstáculo, una o más características de los obstáculos, imágenes de la obstáculo, etc.
Téngase en cuenta que, en algunos casos, los vehículos 102 pueden alejarse de un área específica alrededor del obstáculo durante un período de tiempo particular para permitir una retirada segura y/o para aumentar la eficiencia en otras tareas. En algunas realizaciones, el propio vehículo 102 se puede configurar para superar el obstáculo, por ejemplo, mediante un brazo robótico o empujando el obstáculo con la parte delantera 170 o con la parte trasera 174 del vehículo 102.
Implementaciones basadas en ordenador
En algunos ejemplos, parte o todo el procesamiento descrito anteriormente se puede llevar a cabo en un dispositivo informático personal, en uno o más dispositivos informáticos centralizados o mediante procesamiento basado en la nube mediante uno o más servidores. En algunos ejemplos, algunos tipos de procesamiento se realizan en un dispositivo y otros tipos de procesamiento se realizan en otro dispositivo. En algunos ejemplos, algunos o todos los datos descritos anteriormente se pueden almacenar en un dispositivo informático personal, en un almacenamiento de datos alojado en uno o más dispositivos informáticos centralizados o mediante almacenamiento basado en la nube. En algunos ejemplos, algunos datos se almacenan en una ubicación y otros datos se almacenan en otra ubicación. En algunos ejemplos, se puede utilizar la computación cuántica. En algunos ejemplos, se pueden utilizar lenguajes de programación funcionales. En algunos ejemplos, se puede utilizar memoria eléctrica, tal como memoria basada en flash.
La Figura 6 es un diagrama de bloques de un sistema informático a modo de ejemplo 600 que se puede utilizar para implementar los sistemas y métodos descritos en el presente documento. Los ordenadores de uso general, dispositivos de red, dispositivos móviles u otros sistemas electrónicos también pueden incluir al menos partes del sistema 600. El sistema 600 incluye un procesador 610, una memoria 620, un dispositivo de almacenamiento 630 y un dispositivo de entrada/salida 640. Cada uno de los componentes 610, 620, 630 y 640 se puede interconectar, por ejemplo, utilizando un bus de sistema 650. El procesador 610 es capaz de procesar instrucciones para su ejecución dentro del sistema 600. En algunas implementaciones, el procesador 610 es un procesador de un solo proceso. En algunas implementaciones, el procesador 610 es un procesador multiproceso. El procesador 610 es capaz de procesar instrucciones almacenadas en la memoria 620 o en el dispositivo de almacenamiento 630.
La memoria 620 almacena información dentro del sistema 600. En algunas implementaciones, la memoria 620 es un medio no transitorio legible por ordenador. En algunas implementaciones, la memoria 620 es una unidad de memoria volátil. En algunas implementaciones, la memoria 620 es una unidad de memoria no volátil.
El dispositivo de almacenamiento 630 es capaz de proporcionar almacenamiento masivo para el sistema 600. En algunas implementaciones, el dispositivo de almacenamiento 630 es un medio no transitorio legible por ordenador. En varias implementaciones diferentes, el dispositivo de almacenamiento 630 puede incluir, por ejemplo, un dispositivo de disco duro, un dispositivo de disco óptico, una unidad de estado sólido, una unidad flash o algún otro dispositivo de almacenamiento de gran capacidad. Por ejemplo, el dispositivo de almacenamiento puede almacenar datos a largo plazo (por ejemplo, datos de bases de datos, datos del sistema de archivos, etc.). El dispositivo de entrada/salida 640 proporciona operaciones de entrada/salida para el sistema 600. En algunas implementaciones, el dispositivo de entrada/salida 640 puede incluir uno o más dispositivos de interfaz de red, por ejemplo, una tarjeta Ethernet, un dispositivo de comunicación en serie, por ejemplo, un puerto RS-232 y/o un dispositivo de interfaz inalámbrica, por ejemplo, una tarjeta 802.11, un módem inalámbrico 3G o un módem inalámbrico 4G. En algunas implementaciones, el dispositivo de entrada/salida puede incluir dispositivos controladores configurados para recibir datos de entrada y enviar datos de salida a otros dispositivos de entrada/salida, por ejemplo, un teclado, una impresora y dispositivos de visualización 660. En algunos ejemplos, se pueden utilizar dispositivos informáticos móviles, dispositivos de comunicación móviles y otros dispositivos.
En algunas implementaciones, al menos una parte de los enfoques descritos anteriormente se pueden realizar mediante instrucciones que, tras su ejecución, hacen que uno o más dispositivos de procesamiento lleven a cabo los procesos y funciones descritos anteriormente. Dichas instrucciones pueden incluir, por ejemplo, instrucciones interpretadas tales como instrucciones de script, o código ejecutable, u otras instrucciones almacenadas en un medio no transitorio legible por ordenador. El dispositivo de almacenamiento 630 puede implementarse de forma distribuida a través de una red, tal como una granja de servidores o un conjunto de servidores ampliamente distribuidos, o se puede implementar en un único dispositivo informático.
Aunque en la Figura 6 se ha descrito un sistema de procesamiento a modo de ejemplo, las realizaciones de la materia en cuestión, las operaciones funcionales y los procesos descritos en esta memoria se pueden implementar en otros tipos de circuitos electrónicos digitales, en software o firmware de ordenador incorporado tangiblemente, en hardware de ordenador, incluidas las estructuras expuestas en esta memoria y sus equivalentes estructurales, o en combinaciones de uno o más de ellos. Las realizaciones de la materia descrita en esta memoria se pueden implementar como uno o más programas informáticos, es decir, uno o más módulos de instrucciones de programas informáticos codificados en un soporte de programa tangible no volátil para su ejecución o para controlar el funcionamiento de aparatos de procesamiento de datos. Alternativa o adicionalmente, las instrucciones del programa se pueden codificar en una señal propagada generada artificialmente, por ejemplo, una señal eléctrica, óptica o electromagnética generada por una máquina que se genera para codificar información para su transmisión a un aparato receptor adecuado para su ejecución mediante un aparato de procesamiento de datos. El medio de almacenamiento informático puede ser un dispositivo de almacenamiento legible por máquina, un sustrato de almacenamiento legible por máquina, un dispositivo de memoria de acceso aleatorio o en serie, o una combinación de uno o más de ellos.
El término "sistema" puede abarcar todo tipo de aparatos, dispositivos y máquinas para procesar datos, incluyendo a modo de ejemplo un procesador programable, un ordenador o múltiples procesadores u ordenadores. Un sistema de procesamiento puede incluir circuitos lógicos de propósito especial, por ejemplo, un FPGA (matriz de puertas programables en campo) o un ASIC (circuito integrado de aplicación específica). Un sistema de procesamiento puede incluir, además de hardware, un código que crea un entorno de ejecución para el programa informático en cuestión, por ejemplo, un código que constituye el firmware del procesador, una pila de protocolos, un sistema de gestión de bases de datos, un sistema operativo o una combinación de uno o más de ellos.
Un programa de ordenador (que también puede denominarse o describirse como un programa, software, una aplicación de software, un módulo, un módulo de software, un script o un código) se puede escribir en cualquier forma de lenguaje de programación, incluidos los lenguajes compilados o interpretados, o lenguajes declarativos o procedimentales, y se puede implementar en cualquier forma, incluso como un programa independiente o como un módulo, componente, subrutina u otra unidad adecuada para su utilización en un entorno informático. Un programa de ordenador puede corresponder, aunque no necesariamente, a un archivo en un sistema de archivos. Un programa puede almacenarse en una parte de un archivo que contiene otros programas o datos (por ejemplo, uno o más scripts almacenados en un documento de lenguaje de marcado), en un único archivo dedicado al programa en cuestión o en múltiples archivos coordinados (por ejemplo, archivos que almacenan uno o más módulos, subprogramas o partes de código). Un programa informático puede ser implementado para ser ejecutado en un ordenador o en varios ordenadores ubicados en un sitio o distribuidas en múltiples sitios e interconectadas por una red de comunicación.
Los procesos y flujos lógicos descritos en esta memoria pueden ser realizados por uno o más ordenadores programables que ejecutan uno o más programas de ordenador para realizar funciones operando con datos de entrada y generando datos de salida. También se pueden realizar procesos y flujos lógicos, y el aparato también puede ser implementado como, circuitos lógicos de finalidad especial, por ejemplo, un FPGA (matriz de puertas programables en campo) o un ASIC (circuito integrado de aplicación específica).
Los ordenadores adecuados para la ejecución de un programa informático pueden incluir, a modo de ejemplo, microprocesadores de finalidad general o especial, o ambos, o cualquier otro tipo de unidad central de procesamiento. Generalmente, una unidad central de procesamiento recibirá instrucciones y datos de una memoria de solo lectura o de una memoria de acceso aleatorio o de ambas. Un ordenador generalmente incluye una unidad central de procesamiento para realizar o ejecutar instrucciones y uno o más dispositivos de memoria para almacenar instrucciones y datos. Generalmente, un ordenador también incluirá, o estará conectado operativamente para recibir o transferir datos, o ambas cosas, uno o más dispositivos de almacenamiento masivo para almacenar datos, por ejemplo, discos magnéticos, magnetoópticos o discos ópticos. Sin embargo, no es necesario que un ordenador tenga tales dispositivos. Además, un ordenador puede estar integrado en otro dispositivo, por ejemplo, un teléfono móvil, un asistente digital personal (PDA), un reproductor de audio o vídeo móvil, una consola de juegos, un receptor del Sistema de Posicionamiento Global (GPS) o un dispositivo de almacenamiento portátil (por ejemplo, una unidad flash de bus universal en serie (USB), por nombrar solo algunos.
Los medios legibles por ordenador adecuados para almacenar instrucciones y datos de programas informáticos incluyen todas las formas de memoria no volátil, medios y dispositivos de memoria, incluidos, a modo de ejemplo, dispositivos de memoria semiconductores, por ejemplo, EPROM, EEPROM y dispositivos de memoria flash; discos magnéticos, por ejemplo, discos duros internos o discos extraíbles; discos magnetoópticos; y discos CD-ROM y DVD-ROM. El procesador y la memoria se pueden complementar o incorporar en circuitos lógicos de propósito especial.
Para proporcionar interacción con un usuario, se pueden implementar realizaciones del tema descrito en esta memoria en un ordenador que tenga un dispositivo de visualización, por ejemplo, un monitor CRT (tubo de rayos catódicos) o LCD (pantalla de cristal líquido), para mostrar información al usuario y un teclado y un dispositivo señalador, por ejemplo, un ratón o una bola de seguimiento, mediante el cual el usuario puede proporcionar información al ordenador. También se pueden utilizar otros tipos de dispositivos para permitir la interacción con el usuario; por ejemplo, la retroalimentación proporcionada al usuario puede ser cualquier forma de retroalimentación sensorial, por ejemplo, retroalimentación visual, retroalimentación auditiva o retroalimentación táctil; y la entrada del usuario se puede recibir en cualquier forma, incluida la entrada acústica, de voz o táctil. Además, un ordenador puede interactuar con el usuario enviando y recibiendo documentos desde un dispositivo que utiliza el usuario; por ejemplo, enviando páginas web a un navegador web en el dispositivo de un usuario como respuesta a solicitudes recibidas desde el navegador web.
Las realizaciones de la materia descrita en esta memoria se pueden implementar en un sistema informático que incluye un componente backend, por ejemplo, como un servidor de datos, o que incluye un componente de middleware, por ejemplo, un servidor de aplicaciones, o que incluye un componente de frontend, por ejemplo, un ordenador cliente que tiene una interfaz gráfica de usuario o un navegador web a través del cual un usuario puede interactuar con una implementación de la materia descrita en esta memoria, o cualquier combinación de uno o más componentes de backend, middleware o frontend. Los componentes del sistema se pueden interconectar mediante cualquier forma o medio de comunicación de datos digitales, por ejemplo, una red de comunicación. Ejemplos de redes de comunicación incluyen una red de área local ("LAN") y una red de área amplia ("WAN"), por ejemplo, Internet.
El sistema informático puede incluir clientes y servidores. Un cliente y un servidor generalmente son remotos entre sí y normalmente interactúan a través de una red de comunicación. La relación de cliente y servidor surge en virtud de que los programas informáticos se ejecutan en los respectivos ordenadores y tienen una relación cliente-servidor entre sí.

Claims (11)

REIVINDICACIONES
1. Un método implementado por ordenador para la operación de vehículos autónomos, comprendiendo el método:
recibir (302), mediante un sistema informático, una pluralidad de señales de evento desde al menos un primer vehículo autónomo (102) que está recorriendo un camino (402);
determinar (304), mediante el sistema informático, si las señales de evento son indicativas de un obstáculo (406) en una parte del camino;
recibir (306), por el sistema informático desde al menos un segundo vehículo autónomo, al menos una característica del obstáculo (406) capturada por al menos un sensor del segundo vehículo autónomo; determinar (308), mediante el sistema informático y en función de la característica del obstáculo, al menos una tarea para retirar el obstáculo (406) de la parte del camino; y
transmitir (310), por el sistema informático, la tarea a al menos un tercer vehículo autónomo,
en donde la pluralidad de señales de evento indican al menos uno de:
(i) disminución de la velocidad del primer vehículo autónomo mientras recorre el camino;
(ii) aumento de la congestión de vehículos o personas en el camino;
(iii) desviación del primer vehículo autónomo del camino (402); o
(iv) colisión con el obstáculo (406).
2. El método de la reivindicación 1, en donde la tarea es transmitida a un controlador del tercer vehículo autónomo, y que comprende, además:
guiar, mediante el controlador, como respuesta a la recepción de la tarea, el tercer vehículo autónomo a la parte del camino para retirar el obstáculo (406) según la tarea.
3. El método de cualquiera de las reivindicaciones anteriores, que comprende, además:
recibir, por parte del sistema informático, una señal de que el obstáculo (406) ha sido retirado del camino.
4. El método de cualquiera de las reivindicaciones anteriores, en donde al menos un sensor comprende al menos uno de entre una cámara, un sensor LiDAR o un sensor de profundidad.
5. El método de cualquiera de las reivindicaciones anteriores, en donde al menos una característica del obstáculo (406) comprende al menos uno del tamaño del obstáculo, la forma del obstáculo, el peso del obstáculo o el tipo de obstáculo.
6. El método de cualquiera de las reivindicaciones anteriores, en donde al menos dos del grupo formado por el primer vehículo autónomo, el segundo vehículo autónomo y el tercer vehículo autónomo son un mismo vehículo autónomo.
7. El método de cualquiera de las reivindicaciones anteriores, en donde al menos una tarea se incluye en una lista de tareas para el tercer vehículo autónomo.
8. El método de cualquiera de las reivindicaciones anteriores, en donde determinar si las señales de evento son indicativas de un obstáculo comprende:
determinar si las señales de evento son indicativas de evento del vehículo que no están dentro de un conjunto de evento definidos asociados con el recorrido del camino.
9. El método de cualquiera de las reivindicaciones anteriores, que comprende además comparar la característica del obstáculo con una característica de un obstáculo conocido.
10. Un sistema informático (202, 206) para el funcionamiento autónomo de vehículos, comprendiendo el sistema informático:
un dispositivo de comunicación (214, 218) configurado para transmitir o recibir una pluralidad de señales de evento; y
un procesador (212, 216) en comunicación eléctrica con el dispositivo de comunicación, en donde el sistema informático está configurado para llevar a cabo el método de cualquiera de las reivindicaciones anteriores.
11. Un programa informático que comprende instrucciones que, cuando se ejecutan en un procesador de un sistema informático, están configuradas para hacer que el sistema informático lleve a cabo el método de cualquiera de las reivindicaciones 1 a 9.
ES21205177T 2020-11-19 2021-10-28 Sistema y método para el funcionamiento de vehículos autónomos Active ES2971741T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/952,484 US11906980B2 (en) 2020-11-19 2020-11-19 Systems and methods for autonomous vehicle operation

Publications (1)

Publication Number Publication Date
ES2971741T3 true ES2971741T3 (es) 2024-06-06

Family

ID=78414301

Family Applications (1)

Application Number Title Priority Date Filing Date
ES21205177T Active ES2971741T3 (es) 2020-11-19 2021-10-28 Sistema y método para el funcionamiento de vehículos autónomos

Country Status (6)

Country Link
US (1) US11906980B2 (es)
EP (1) EP4002051B1 (es)
CN (1) CN114655220A (es)
CA (1) CA3138417A1 (es)
ES (1) ES2971741T3 (es)
PL (1) PL4002051T3 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115291610B (zh) * 2022-08-31 2025-06-10 江苏徐工工程机械研究院有限公司 作业系统、辅助作业方法、辅助作业设备和存储介质
US20240302837A1 (en) * 2023-03-06 2024-09-12 6 River Systems, Llc Systems, apparatus, and methods to improve performance efficiency of autonomous robots

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3387596A1 (en) 2015-12-07 2018-10-17 6 River Systems, Inc. Warehouse automation systems and methods using a motor-driven cart
US10071856B2 (en) * 2016-07-28 2018-09-11 X Development Llc Inventory management
US10209711B1 (en) * 2016-09-28 2019-02-19 Amazon Technologies, Inc. Techniques for contention resolution for mobile drive units
US11429101B2 (en) * 2018-04-19 2022-08-30 Aurora Flight Sciences Corporation Adaptive autonomy system architecture
CN109445438B (zh) * 2018-12-05 2022-03-04 英华达(上海)科技有限公司 基于地图分享的巡航装置的巡航控制方法及系统
AU2019404207B2 (en) * 2018-12-20 2023-12-14 Augean Robotics, Inc. Collaborative autonomous ground vehicle
US11364898B2 (en) * 2019-04-22 2022-06-21 Robotic Research Opco, Llc Autonomous vehicle controlled crash
TWI699636B (zh) 2019-05-21 2020-07-21 華邦電子股份有限公司 協同型機器人控制系統和方法

Also Published As

Publication number Publication date
CN114655220A (zh) 2022-06-24
US11906980B2 (en) 2024-02-20
US20220155798A1 (en) 2022-05-19
CA3138417A1 (en) 2022-05-19
EP4002051A1 (en) 2022-05-25
EP4002051B1 (en) 2023-10-25
PL4002051T3 (pl) 2024-03-25

Similar Documents

Publication Publication Date Title
JP7496388B2 (ja) アイテムを仕分ける方法および材料取り扱いシステム
ES2716927T3 (es) Vehículo automático guiado para la selección de pedidos
ES2902217T3 (es) Sistemas y métodos para el almacenamiento y la gestión modular
US20230294135A1 (en) Material handling apparatus and method for automatic and manual sorting of items using a dynamically configurable sorting array
US11053075B2 (en) Inventory system with efficient operator handling of inventory items
ES3010372T3 (en) Transport and manipulation system and method for transporting load carriers
KR102452858B1 (ko) 모터 구동 카트를 사용하는 창고 자동화 시스템들 및 방법들
US9487356B1 (en) Managing low-frequency inventory items in a fulfillment center
US20200207250A1 (en) Automated Loading of Delivery Vehicles Using Automated Guided Vehicles
ES2929505T3 (es) Sistema de almacenamiento y método para controlar el movimiento de un dispositivo de transporte en una instalación dispuesta para almacenar contenedores
US10209711B1 (en) Techniques for contention resolution for mobile drive units
CA3128844C (en) SYSTEMS AND METHODS FOR MANAGING EXCEPTIONS TO COMMANDS COLLECTED BY AUTONOMOUS VEHICLES
ES2971741T3 (es) Sistema y método para el funcionamiento de vehículos autónomos
US10330480B1 (en) Deployable sensors
US20160145044A1 (en) Inventory system with efficient operator handling of inventory items
US10119272B1 (en) Interference frames
US10322802B1 (en) Deployable sensors
US20230236600A1 (en) Operational State Detection for Obstacles in Mobile Robots
ES2955912T3 (es) Sistemas y métodos para operación de vehículos autónomos
CA3138767A1 (en) Virtual mapping systems and methods for use in autonomous vehicle navigation
JP2022121304A (ja) ロボット制御システム、ロボット制御方法、及びプログラム
US20220291681A1 (en) Systems and methods for edge and guard detection in autonomous vehicle operation
US10692041B1 (en) Inventory holder markers for selective glowing based on received wavelengths
US20240233449A9 (en) Dynamic Control of Operational Data Handling Settings in Mobile Robots
US11703861B1 (en) Inventory system with high-speed corridors for autonomous surface vehicles