ES2793599T3 - Robot que sigue la pared - Google Patents

Robot que sigue la pared Download PDF

Info

Publication number
ES2793599T3
ES2793599T3 ES18192868T ES18192868T ES2793599T3 ES 2793599 T3 ES2793599 T3 ES 2793599T3 ES 18192868 T ES18192868 T ES 18192868T ES 18192868 T ES18192868 T ES 18192868T ES 2793599 T3 ES2793599 T3 ES 2793599T3
Authority
ES
Spain
Prior art keywords
robot
bumper
wall
wall surface
sensor
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
ES18192868T
Other languages
English (en)
Inventor
Brian Wolfe
Ping-Hong Lu
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.)
iRobot Corp
Original Assignee
iRobot Corp
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 iRobot Corp filed Critical iRobot Corp
Application granted granted Critical
Publication of ES2793599T3 publication Critical patent/ES2793599T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/28Floor-scrubbing machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/408Means for supplying cleaning or surface treating agents
    • A47L11/4088Supply pumps; Spraying devices; Supply conduits
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • 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/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • 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/0227Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area
    • 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/0259Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/06Control of the cleaning action for autonomous devices; Automatic detection of the surface condition before, during or after cleaning
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electric Vacuum Cleaner (AREA)
  • Robotics (AREA)
  • Manipulator (AREA)

Abstract

Un método para controlar un robot de limpieza que tiene un paño de limpieza (120), que comprende: ejecutar un comportamiento de seguimiento de pared manteniendo un contacto continuo entre una superficie de pared (20) y el paño de limpieza del robot mientras se mantiene un ángulo pequeño entre el robot y la superficie de pared, caracterizado por: utilizar un sensor (112) del robot para permitir un contacto continuo entre el paño de limpieza del robot y la superficie de pared, mientras el robot rastrea la superficie de pared.

Description

DESCRIPCIÓN
Robot que sigue la pared
Campo técnico
Esta divulgación se refiere en general al control del movimiento de un robot para rastrear un obstáculo, tal como una pared, durante su movimiento.
Antecedentes
Los robots móviles pueden utilizarse para recorrer superficies para realizar diversas operaciones, tales como limpiar, aspirar, o similar. Obstáculos, tales como paredes, elementos fijos, o similar, pueden hacer difícil que algunos robots móviles alcancen algunas áreas. Por ejemplo, puede ser difícil que un robot recorra una superficie adyacente a la intersección entre una pared y un suelo.
El documento US 2011/0202175 A1 describe un limpiador robótico que incluye un conjunto de limpieza para limpiar una superficie y un cuerpo principal del robot. El cuerpo principal del robot aloja un sistema de impulsión para hacer que se mueva el limpiador robótico y un microcontrolador para controlar el movimiento del limpiador robótico. El conjunto de limpieza está ubicado delante del sistema de impulsión y una anchura del conjunto de limpieza es mayor que una anchura del cuerpo principal del robot.
Sumario
La presente invención se refiere a un método para controlar un robot de limpieza que tiene un paño de limpieza. Los detalles de una o varias implementaciones se exponen en los dibujos adjuntos y la descripción en el presente documento. A partir de la descripción y los dibujos, y a partir de las reivindicaciones resultarán evidentes otras características y ventajas.
Descripción de los dibujos
La figura 1A es una vista en perspectiva de un robot móvil.
La figura 1B es una vista lateral del robot móvil de la figura 1A.
La figura 1C es una vista superior del robot móvil de la figura 1 A.
La figura 1D es una vista superior de un paño de limpieza para su uso con el robot móvil de la figura 1 A.
La figura 1E es una vista superior de un mecanismo de fijación de paño de limpieza.
La figura 1F es una vista en perspectiva en despiece ordenado del robot móvil de la figura 1 A.
La figura 1G es una vista en perspectiva de una parte superior sacada del robot móvil de la figura 1 A.
La figura 1H es una vista en perspectiva de una parte superior sacada del robot móvil de la figura 1 A.
Las figuras 2A a 2C son vistas esquemáticas superiores de un parachoques de un robot móvil que entra en contacto con una superficie de pared.
La figura 3A es una vista superior de un robot móvil que muestra el robot móvil fregando una superficie de suelo. La figura 3B es una vista superior de un robot móvil que ejecuta un patrón de hilera de maíz para limpiar una habitación.
La figura 3C es una vista superior de un dispositivo móvil que limpia un perímetro de la habitación de la figura 3B. Las figuras 3D y 3H son vistas superiores de un robot móvil de ejemplo que limpia una habitación con un obstáculo. La figura 4 es una vista esquemática de la arquitectura de un controlador del robot móvil de ejemplo de la figura 1 A. Las figuras 5A a 5F ilustran un robot móvil que limpia una esquina interior.
Las figuras 6A a 6E ilustran un robot móvil que limpia una esquina exterior de un perímetro.
Las figuras 7A a 7D representan un ejemplo de un robot móvil que limpia una superficie de pared.
La figura 8 es un diagrama de flujo que muestra un proceso implementado por un robot móvil para seguir una superficie de pared.
Los números de referencia similares en diferentes figuras indican elementos similares.
Descripción detallada
En el presente documento se describen robots de ejemplo configurados para recorrer superficies, tales como suelos, alfombras, césped, u otros materiales. Los robots de ejemplo pueden estar configurados para realizar diversas operaciones con respecto a las superficies que incluyen, pero no se limitan a, aspirar, limpieza en mojado o seco, limpieza en húmedo, pulido, y similar.
Las áreas abiertas de las superficies pueden recorrerse en un patrón o aleatoriamente. Las paredes u otros obstáculos (por ejemplo, con superficies verticales) pueden afectar a cómo el robot recorre la superficie. Por ejemplo, las superficies adyacentes a las paredes pueden ser difíciles de alcanzar utilizando un recorrido transversal en patrón o aleatorio. Por consiguiente, los robots de ejemplo descritos en el presente documento emplean técnicas de seguimiento de pared (también denominadas de rastreo) que pueden permitir a los robots recorrer las superficies adyacentes a paredes u otros obstáculos. Una técnica de rastreo de ejemplo descrita en el presente documento incluye utilizar un sensor lineal para detectar la fuerza entre el robot y una pared y, en respuesta a la fuerza detectada, controlar el movimiento del robot para seguir la pared. En algunas implementaciones, el movimiento del robot se controla basándose en medir la cantidad de fuerza entre el robot y la pared de modo que la fuerza medida permanezca dentro de un rango objetivo. Por ejemplo, el robot puede entrar en contacto con la pared con un ángulo (por ejemplo, entre 5 y 10 grados) de modo que el parachoques se comprima parcialmente debido a la fricción entre la pared y el parachoques. También se describen otras implementaciones.
Las técnicas de rastreo de ejemplo descritas en el presente documento pueden utilizarse con cualquier tipo de robot apropiado u otro aparato que se encuentre con paredes u otros obstáculos en sus recorridos. Un ejemplo de un robot que emplea tales técnicas de rastreo es un robot móvil que puede limpiar una superficie de suelo de una habitación navegando por la habitación. Con referencia a la figura 1A, en algunas implementaciones, un robot móvil 100 navega por y limpia una superficie de suelo 10 de una habitación que tiene una superficie de pared lateral 20. En algunas implementaciones, el robot pesa menos de 5 libras (por ejemplo, menos de 2,26 kg) y tiene un centro de gravedad CG. En algunas implementaciones, el robot móvil puede ser autónomo. El robot 100 incluye un cuerpo 102 soportado por ruedas (no visibles en la figura 1A) que permiten que el robot 100 realice maniobras por la superficie de suelo 10 basándose en, por ejemplo, una orden de accionamiento que tiene componentes x, y, y 0. Como se muestra, el cuerpo de robot 102 tiene una forma cuadrada y define un eje X y un eje Y. El eje X define un sentido hacia la derecha R del robot 100 y un sentido hacia la izquierda L del robot 100. El eje Y define un sentido hacia atrás A (posterior) del robot 100 y un sentido hacia delante F del robot 100. En otras implementaciones, el cuerpo 102 puede tener otras formas, tales como una forma circular, una forma ovalada, una forma de lágrima, una forma rectangular, una combinación de una parte anterior cuadrada o rectangular y una parte posterior circular, o una combinación longitudinalmente asimétrica de cualquiera de estas formas. El cuerpo 102 incluye una parte inferior (no mostrada) y una parte superior 108.
A lo largo de la parte inferior del cuerpo de robot 102, uno o varios sensores de desnivel posteriores (no mostrados) ubicados en una o ambas de las dos esquinas posteriores del robot 100 y uno o varios sensores de desnivel anteriores (no mostrados) ubicados en una o ambas de las esquinas anteriores del robot móvil 100 detectan salientes u otros cambios de elevación pronunciados de la superficie de suelo 10 y evitan que el robot 100 caiga por los bordes de suelo. Los sensores de desnivel pueden ser sensores de caída mecánicos o sensores de proximidad basados en luz, tales como un par de IR (infrarrojos), un emisor dual, receptor único o receptor dual, sensor de proximidad basado en luz IR de emisor único que apunta hacia abajo a una superficie de suelo 10.
El cuerpo 102 lleva un parachoques móvil 110 para detectar colisiones en las direcciones longitudinal (A, F) o lateral (L, R). El parachoques 110 está montado en un lado anterior 102F del cuerpo de robot 102 y lo envuelve hacia el lado derecho 102R y un lado izquierdo 102L del cuerpo de robot 102. El parachoques 110 tiene una forma que complementa el cuerpo de robot 102 y se extiende hacia delante del cuerpo de robot 102. El parachoques 110 incluye una parte inferior 111 que se extiende de modo que la dimensión global del lado anterior 102F es más ancha que un lado posterior 102A del cuerpo de robot 102. El cuerpo de robot 102 soporta el parachoques 110 de modo que el parachoques 110 pueda trasladarse y rotar con respecto al cuerpo de robot 102. Como resultado, una parte derecha 110R y una parte izquierda 110L del parachoques 110 pueden moverse en diferentes direcciones. Como se describirá en más detalle en el presente documento, un conjunto de sensor de parachoques izquierdo 112L y un conjunto de sensor de parachoques derecho 112R están colocados dentro del robot 100 de modo que el conjunto de sensor de parachoques izquierdo 112L puede detectar el movimiento de la parte izquierda 110L del parachoques 110 y el conjunto de sensor de parachoques derecho 112R puede detectar el movimiento de la parte derecha 110R del parachoques 110. El conjunto de sensor de parachoques derecho 112R está ubicado adyacente al lado derecho 102R del cuerpo de robot 102. El conjunto de sensor de parachoques izquierdo 112L está ubicado adyacente al lado izquierdo 102L del cuerpo de robot 102. En general, los conjuntos de sensor de parachoques 112L, 112R pueden ser conjuntos de sensores lineales que proporcionan una señal analógica que es lineal con respecto a una fuerza sobre el parachoques 110. En algunas implementaciones, como se describe en el presente documento, pueden incluirse en el robot conjuntos de sensores adicionales, por ejemplo, entre los conjuntos de sensor izquierdo y derecho.
En algunos ejemplos, el uso de un sensor lineal que proporcione un sensor analógico puede proporcionar diversas ventajas. Por ejemplo, el sensor lineal proporciona una señal que varía con la extensión de la compresión del parachoques. Si el parachoques se comprime a la mitad entre una posición no comprimida y una posición completamente comprimida, el valor de la tensión o corriente del sensor será la mitad del valor cuando el parachoques está completamente comprimido.
Con referencia a la figura 1B, la parte inferior del cuerpo de robot 102 incluye un paño de limpieza fijado 120. La parte inferior del cuerpo de robot 102 incluye ruedas 121 que soportan de manera rotatoria una parte trasera 106 del cuerpo de robot 102 cuando el robot 100 navega por la superficie de suelo 10. Cada una de las ruedas 121 puede hacerse funcionar con un sensor de corriente 123 que determina la corriente suministrada a cada una de las ruedas 121. Cada una de las ruedas 121 también puede estar asociada con, y puede hacerse funcionar con, un codificador que determina una posición de cada una de las ruedas 121. El codificador puede ser un codificador óptico que detecta la posición de rotación de la rueda 121. Basándose en la posición de rotación, un controlador del robot 100 puede determinar aceleraciones y/o velocidades de las ruedas 121. El paño de limpieza 120 soporta una parte delantera 104 del cuerpo de robot 102 cuando el robot 100 navega por la superficie de suelo 10. El sensor de corriente 123 y el codificador en conjunto pueden detectar cuando las ruedas 121 del robot 100 se accionan sin el movimiento del robot en el sentido de avance F.
Un depósito 122 dentro del cuerpo de robot 102 contiene un fluido de limpieza 124 (por ejemplo, solución de limpieza, agua y/o detergente). En algunos ejemplos, el depósito 122 tiene una capacidad de 170 a 230 ml o aproximadamente 200 ml. El robot 100 incluye un aplicador de fluido 126 conectado al depósito 122 por un tubo dentro del cuerpo de robot 102. En algunos ejemplos, el aplicador de fluido 126 puede ser un pulverizador o mecanismo de pulverización.
La parte superior 108 del robot 100 puede incluir un asa 135 para que un usuario lleve el robot 100. Cuando está plegada, el asa 135 se encaja en un rebaje en la parte superior 108 del robot 100. La parte superior 108 también puede incluir un pulsador 136 dispuesto debajo del asa 135 que activa un mecanismo de liberación de paño. El usuario también puede presionar un botón de limpieza 140 para encender el robot 100 y para indicar al robot 100 que empiece la operación de limpieza. El botón de limpieza 140 puede utilizarse también para otras operaciones del robot, tales como apagar el robot 100 y/o establecer una ubicación de barrera virtual.
Con referencia a la figura 1C, en algunos casos, el paño de limpieza 120 puede extenderse más allá de la anchura del parachoques 110 de modo que el robot 100 pueda colocar un borde externo del paño 120 hasta y a lo largo de superficies de difícil acceso o en hendiduras, tales como en una interfaz pared-suelo 30. En algunos ejemplos, el paño de limpieza 120 se extiende más allá del cuerpo 102 del robot 100 aproximadamente de 0,1 a 10 mm (por ejemplo, 0,5 mm a 2 mm, 1 mm a 3 mm, 1 mm a 5 mm, 2 mm a 5 mm, 3 mm a 6 mm, 5 mm a 10 mm, aproximadamente 1 mm, aproximadamente 5 mm, aproximadamente 10 mm). En tales implementaciones, los extremos del paño de limpieza 120 entran en contacto con la superficie de pared 20 y, como se describe en el presente documento, pueden hacer que el parachoques 110 se mueva debido a las fuerzas de fricción sobre el paño de limpieza 120. En una implementación, el paño de limpieza 120 se extiende hasta los bordes y no se extiende significativamente más allá de una sujeción de paño (no mostrada) del robot. El parachoques 110, en este caso, entra en contacto con la superficie de pared 20 y se mueve debido a la fricción entre el parachoques y la superficie de pared 20.
El robot 100 puede empujar el borde del paño 120 contra superficies de pared u otras superficies que se extienden verticalmente. La posición del paño de limpieza 120 permite además que el paño de limpieza 120 limpie las superficies o hendiduras de una pared u otra superficie que se extiende verticalmente mediante el borde extendido del paño de limpieza 120 al tiempo que el robot 100 se mueve en un movimiento de seguimiento de pared durante un periodo de tiempo. Así, la extensión del paño de limpieza 120 puede permitir que el robot 100 limpie en grietas y hendiduras más allá del alcance del cuerpo de robot 102. Como se describe en el presente documento, cuando el robot 100 inicia un patrón o comportamiento de seguimiento de pared a lo largo de una superficie lateral de la habitación (por ejemplo, la superficie de pared 20), el paño de limpieza 120 puede presionarse contra la superficie de pared 20 de modo que los residuos ubicados a lo largo de la interfaz pared-suelo 30 pueden recogerse por el paño de limpieza 120.
Con referencia a la figura 1D, en un ejemplo, el paño de limpieza 120 incluye capas de absorción 152, una capa envolvente externa 154 y una cubierta tipo tarjeta 156. El paño 120 tiene extremos cortados romos 158 de modo que las capas de absorción 152 están expuestas a ambos extremos del paño 120 y toda la longitud del paño 120 está disponible para la absorción de fluido y limpieza. El fluido de limpieza absorbido puede retenerse de manera segura por las capas de absorción 152 de modo que el fluido de limpieza no gotee del paño de limpieza 120. En algunos casos, el paño de limpieza 120 es desechable. En otros casos, el paño de limpieza es un paño de microfibra reutilizable (por ejemplo, lavable en lavadora) con una cubierta de plástico duradera.
También con referencia a la figura 1E, el paño de limpieza 120 puede estar asegurado a la parte inferior del robot 100 mediante una sujeción de paño 160. La sujeción de paño 160 puede sujetar el paño de limpieza 120 de manera segura en su sitio agarrando la cubierta tipo tarjeta 156. El paño de limpieza 120 puede instalarse en la sujeción de paño 160 desde cualquiera de dos direcciones idénticas (opuestas entre sí 180 grados). La sujeción de paño 160 puede liberar el paño de limpieza 120 cuando se activa un mecanismo de liberación de paño 162 utilizando un pulsador 136 (mostrado en la figura 1 A).
Con referencia a las figuras 1F a 1H, unas espigas 164 atraviesan el cuerpo de robot 102 para fijar un chasis de parachoques 171 del parachoques 110 al cuerpo de robot 102. El chasis de parachoques 171 está fijado al parachoques 110 (por ejemplo, utilizando fijadores). Con referencia a la figura 1G, las espigas 164 se insertan en aberturas 166 definidas por el cuerpo de robot 102. Las espigas 164 pueden tener un diámetro de sección transversal que varía de tamaño a lo largo de su longitud y además están dimensionadas para entrar en las aberturas 166 definidas por el cuerpo de robot 102. Las espigas 164 pueden estar hechas de un material flexible (por ejemplo, un elastómero u otro material elástico). El material de las espigas 164 permite que el parachoques 110, y por tanto el chasis de parachoques 171, se mueva con respecto al cuerpo de robot 102 tras el contacto entre el parachoques 110 y un obstáculo o una superficie orientada o que se extiende en vertical en el entorno.
Con referencia a la figura 1H, el robot 100 incluye el conjunto de sensor izquierdo 112L y el conjunto de sensor derecho 112R para detectar el movimiento del parachoques 110 con respecto al cuerpo de robot 102. En algunas implementaciones, pueden incluirse (un) conjunto(s) de sensor adicional(es), tales como un conjunto de sensor central (descrito en el presente documento). En algunas implementaciones, los conjuntos de sensor izquierdo y derecho 112L, 112R incluyen sensores lineales. En algunas implementaciones, un sensor lineal tiene una respuesta a una fuerza aplicada que es lineal por al menos un rango limitado. En algunas implementaciones, la respuesta puede ser lineal por todo un rango de la fuerza aplicada, mientras que en otras implementaciones, la respuesta puede ser lineal por sólo un rango limitado de fuerza aplicada. En otras implementaciones, puede utilizarse un sensor no lineal y las señales del sensor no lineal pueden remapearse mediante, por ejemplo, un controlador del robot para calcular una estimación de la fuerza aplicada con respecto a la magnitud de la señal. Los sensores lineales de ejemplo incluyen sensores de efecto Hall, sensores capacitivos o sensores inductivos. Puede utilizarse cualquier tipo de sensor lineal apropiado. El siguiente ejemplo se refiere al uso de un sensor de efecto Hall, que puede ser un transductor que varía su tensión de salida en respuesta a un campo magnético. El sensor de efecto Hall puede funcionar como transductor analógico, devolviendo directamente una señal de tensión analógica en respuesta al campo magnético. Con un campo magnético conocido, puede determinarse su distancia con respecto a la placa Hall y puede deducirse la posición relativa del imán basándose en la tensión medida.
Con referencia a la figura 1F, el chasis de parachoques 171 incluye un pedestal izquierdo o espiga 168L donde está montado y alojado un imán izquierdo 170L. El imán izquierdo 170L forma parte del conjunto de sensor de parachoques izquierdo 112L descrito anteriormente. El chasis de parachoques 171 también incluye una espiga derecha 168R y un imán derecho 170R para el conjunto de sensor de parachoques derecho 112R. El imán 170L puede estar acoplado a la espiga 168L del chasis de parachoques 171, lo que permite que el imán 170L se mueva con respecto al cuerpo de robot 102 del robot 100.
Con referencia de nuevo a la figura 1H, en este ejemplo, una plataforma 172 está fijada al cuerpo de robot 102. Cuando el parachoques 110 se mueve con respecto al cuerpo de robot 102, el chasis de parachoques 171, que está fijado al parachoques 110, también se mueve con respecto a la plataforma 172. El chasis de parachoques 171 también puede estar fijado a las espigas elásticas 164 para amortiguar la respuesta dinámica del parachoques 110 (por ejemplo, en respuesta a una fuerza del contacto con obstáculos en el entorno), disipar la energía cinética del parachoques y absorber el choque mecánico.
En algunas implementaciones, la plataforma 172 incluye una placa de circuito 174 que incluye un sensor de efecto Hall izquierdo 176L y un sensor de efecto Hall derecho 176R. En algunas implementaciones, los conjuntos de sensor de parachoques 112L y 112R incluyen un primer componente fijado al cuerpo de robot 102 (por ejemplo, los sensores 176L, 176R) y un segundo componente fijado al parachoques 110 a través del chasis de parachoques 171 (por ejemplo, los imanes 170L, 170R). Con referencia de nuevo a la figura 1C, el conjunto de sensor de parachoques izquierdo 112L incluye el sensor izquierdo 176L acoplado al cuerpo de robot 102 y el imán izquierdo 170L acoplado a la parte izquierda 110L del parachoques 110 a través del chasis de parachoques 171. El conjunto de sensor de parachoques derecho 112R incluye el sensor derecho 176R acoplado al cuerpo de robot 102 y el imán derecho 170R acoplado a la parte derecha 110R del parachoques 110 a través del chasis de parachoques 171. El sensor izquierdo 176L está colocado sobre o cerca del lado izquierdo 102L del cuerpo de robot 102 (mostrado en la figura 1A) y por encima del imán izquierdo 170L. El sensor derecho 176R está colocado sobre o cerca del lado derecho 102R del cuerpo de robot 102 y por encima del imán derecho 170R. Los sensores de efecto Hall 176L y 176R generan una tensión en respuesta a campos magnéticos cercanos, tales como as, por ejemplo, los campos magnéticos generados por los imanes 170L y 170R.
La configuración de los conjuntos de sensor de parachoques izquierdo y derecho 112L y 112R permiten que los sensores izquierdo y derecho 176L y 176R detecten el movimiento de los imanes 170L y 170R con respecto a los sensores 176L y 176R. Los imanes 170R, 170L generan campos magnéticos que varían en intensidad en la ubicación de los sensores 176R, 176L cuando los imanes 170R, 170L se alejan más de o acercan más a los sensores 176R, 176L. Los sensores izquierdo y derecho 176L y 176R, a su vez, generan tensiones en respuesta a los movimientos del imán izquierdo y derecho 170L y 170R, respectivamente, con respecto a los sensores izquierdo y derecho 176L y 176R, respectivamente. Las tensiones varían linealmente con los cambios en el campo magnético. Por tanto, los sensores 176L y 176R proporcionan una señal de respuesta analógica que varía basándose en el grado al que se presiona el parachoques 110. A medida que los imanes 170L y 170R se alejan más de sus respectivos sensores 176L y 176R, se debilitan las intensidades de los campos magnéticos en las ubicaciones de los sensores 176L y 176R, y así los sensores 176L y 176R generan una tensión menor. Por el contrario, a medida que los imanes 170L y 170R se acercan más a sus respectivos sensores 176L y 176R, aumentan las intensidades de los campos magnéticos en las ubicaciones de los sensores 176L y 176R, y así los sensores 176L y 176R generan una tensión mayor. Como los sensores 176L y 176R están acoplados al cuerpo de robot 102 y los imanes 170L y 170R están acoplados al parachoques 110, las tensiones analógicas generadas por los sensores 176L y 176R corresponden al movimiento del parachoques 110 con respecto al cuerpo de robot 102 debido a, por ejemplo, el contacto del parachoques 110 con obstáculos en la habitación, tal como una pared. Por ejemplo, la fuerza de fricción entre la pared y el parachoques 110 hace que el parachoques 110 se mueva entre las posiciones no comprimida y parcialmente comprimida, haciendo que los sensores de efecto Hall registren tensiones que varían linealmente con la cantidad de compresión experimentada por el parachoques debido a la fricción entre la pared y el parachoques. Más específicamente, las señales de los sensores 176L, 176R (por ejemplo, las tensiones de los sensores 176L, 176R) varían linealmente con el movimiento del parachoques 110 con respecto al cuerpo de robot 102.
Aunque los sensores 176L y 176R se hayan descrito como sensores de efecto Hall, en algunas implementaciones, los sensores pueden ser sensores capacitivos de modo que los conjuntos de sensor de parachoques funcionen basándose en un cambio en la capacitancia detectada por los sensores de capacitancia. Por ejemplo, las placas capacitivas pueden sustituir los imanes 170L y 170R, y un par correspondiente de placas capacitivas puede sustituir los sensores de efecto Hall 176L, 176R. La capacitancia de los pares de placas izquierdo y derecho puede medirse independientemente utilizando una variedad de técnicas que, por ejemplo, miden dinámicamente el acoplamiento eléctrico midiendo una constante de tiempo RC (resistiva-capacitiva). La capacitancia de los pares izquierdo y derecho puede variar linealmente dependiendo de la distancia de los sensores capacitivos con respecto a las placas capacitivas. En otras implementaciones, los sensores 176L, 176R pueden ser sensores inductivos. En este caso, las placas capacitivas en la placa de circuito se sustituyen por pistas de PCB (placa de circuito impreso) en espiral que sirven de inductores. El chasis de parachoques 171 puede incluir material de núcleo (en lugar de los imanes 170L y 170R) que pasa a través de las pistas en espiral. Cuando el parachoques 110 se comprime, puede variar una cantidad del material de núcleo que atraviesa las pistas en espiral, produciendo así un cambio en la inductancia. La inductancia de estas pistas puede medirse midiendo el acoplamiento inductivo, por ejemplo, midiendo dinámicamente la constante de tiempo de LR (inductiva-resistiva) o LRC (inductiva-resistiva-capacitiva) con un circuito oscilador.
Aunque anteriormente se han descrito los conjuntos de sensor izquierdo y derecho 112L y 112R, en algunas implementaciones, el robot puede incluir adicional y/o alternativamente un conjunto de sensor anterior ubicado entre el lado izquierdo del robot y el lado derecho del robot. El conjunto de sensor anterior puede ubicarse adyacente al lado anterior del robot y puede producir una señal en respuesta al movimiento del parachoques en, por ejemplo, el sentido hacia la derecha R y el sentido hacia la izquierda L. Por tanto, el conjunto de sensor anterior podría detectar fuerzas sobre el parachoques en el sentido lateral.
Aunque los imanes 170R, 170L se han descrito fijados al parachoques 110 y los sensores 176R, 176L se han descrito fijados al cuerpo de robot 102, en algunas implementaciones, los sensores pueden estar fijados al parachoques y los imanes pueden estar fijados al cuerpo de robot. En tales implementaciones, los sensores y los imanes pueden moverse unos respecto a otros para hacer que varíe el campo magnético en los sensores.
Como se muestra en las figuras 2A, 2B y 2C, con líneas discontinuas se muestra una posición neutra 110N del parachoques 110. La posición neutra 110N corresponde a la posición del parachoques 110 antes de que se ejerzan fuerzas sobre el parachoques 110 para hacer que el parachoques 110 se mueva (por ejemplo, se presione) con respecto al cuerpo de robot 102. Como se describe con más detalle en el presente documento, la posición neutra 110N puede variar de una operación de limpieza a otra. Durante una operación de limpieza, el robot 100 puede calibrar la posición neutra 110N de modo que la posición neutra 110N se interpreta como un estado no comprimido del parachoques 110. En el presente documento la compresión del parachoques 110 también se denomina de manera intercambiable traslación hacia atrás del parachoques 110. Las líneas continuas en las figuras 2A, 2B y 2C que representan el parachoques 110 corresponden a la posición del parachoques 110 después de que una fuerza haga que el parachoques 110 se mueva con respecto al cuerpo de robot 102.
El parachoques 110 puede moverse dependiendo de un sentido y una posición de las fuerzas sobre el parachoques 110 (por ejemplo, un sentido relativo y una posición relativa de un obstáculo en contacto con el parachoques 110).
Con referencia a la figura 2A, cuando la parte derecha 110R y la parte izquierda 110L se mueven en el sentido hacia atrás A, el parachoques 110 se traslada en el sentido hacia atrás A con respecto al cuerpo de robot 102. El contacto entre una parte anterior 110F del parachoques 110 con un obstáculo tal como la superficie de pared 20 cuando el robot 100 se mueve en el sentido hacia delante F puede producir la traslación del parachoques 110 en el sentido hacia atrás A. Con referencia a la figura 2B, cuando el robot 100 encuentra un obstáculo en el lado izquierdo del cuerpo de robot 102, el parachoques 110 se presiona en mayor grado en la parte izquierda 110L que en la parte derecha 110R. La parte izquierda 110L se mueve en el sentido hacia atrás A mientras que la parte derecha 110R se mueve en el sentido hacia delante F o en el sentido hacia atrás A de modo que la parte derecha 110R se presiona menos que la parte izquierda 110L. El parachoques 110 se traslada en el sentido hacia atrás A y rota en sentido antihorario con respecto al cuerpo de robot 102 de modo que, por ejemplo, la parte anterior del paño de limpieza forme un ángulo con respecto al cuerpo de robot 102. El contacto entre la parte izquierda 110L del parachoques 110 con la superficie de pared 20 cuando el robot 100 se mueve en el sentido hacia delante F puede producir la rotación en sentido horario y la traslación hacia atrás del parachoques 110 debido, por ejemplo, a la fricción entre la parte izquierda 110L y la superficie de pared 20. Con referencia a la figura 2C, cuando el robot 100 encuentra un obstáculo en el lado derecho del cuerpo de robot 102, el parachoques 110 se presiona en mayor grado en la parte derecha 110R que en la parte izquierda 110L. La parte derecha 110R se mueve en el sentido hacia atrás A mientras que la parte izquierda 110L se mueve en el sentido hacia delante F o el sentido hacia atrás A de modo que la parte izquierda 110L se presiona menos que la parte derecha 110R. El parachoques 110 se traslada hacia atrás y rota en sentido horario con respecto al cuerpo de robot 102 de modo que, por ejemplo, la parte anterior del paño de limpieza forme un ángulo con respecto al cuerpo de robot 102. El contacto entre la parte derecha 110R del parachoques 110 con la superficie de pared 20 cuando el robot 100 se mueve en el sentido hacia delante F puede producir la rotación en sentido horario y la traslación hacia atrás del parachoques 110 debido, por ejemplo, a la fricción entre la parte derecha 110R y la superficie de pared 20. Con referencia a la figura 1H, los conjuntos de sensor de parachoques izquierdo y derecho 112L y 112R pueden detectar los movimientos de la parte izquierda 110L y la parte derecha 110R descritos anteriormente con respecto a las figuras 1A a 1C. Dicho de otro modo, los conjuntos de sensor de parachoques izquierdo y derecho 112L y 112R pueden estar configurados para detectar la compresión de las partes izquierda y derecha 110L y 110R del parachoques 110.
Aunque el parachoques 110 se ha descrito para entrar en contacto con obstáculos, tales como superficies verticales (por ejemplo, paredes), para poder moverse en el entorno, en algunas implementaciones, el parachoques 110 también puede moverse debido al contacto del paño de limpieza con las superficies en el entorno.
Los robots de ejemplo descritos en el presente documento pueden recorrer una superficie siguiendo un patrón, o recorriéndola aleatoriamente. Los comportamientos de navegación de ejemplo de un robot pueden incluir un patrón de seguimiento de pared y un patrón de cobertura de área. Por ejemplo, el patrón de seguimiento de pared puede ser un patrón de movimiento rectilíneo, y el patrón de cobertura de área puede ser un patrón tipo enredadera, un patrón de hilera de maíz, o cualquier combinación de estos patrones. También son posibles otros patrones.
En el patrón de movimiento rectilíneo, el robot 100 se mueve generalmente en una trayectoria rectilínea para seguir un obstáculo definido por bordes verticales, tal como una pared. El patrón de movimiento rectilíneo corresponde generalmente al comportamiento de seguimiento de pared. El uso continuo y repetido del patrón de pata de ave se denomina patrón tipo enredadera o patrón de enrejado. En el patrón tipo enredadera, el robot 100 ejecuta repeticiones de un patrón de pata de ave en las que el robot 100 se mueve de un lado a otro mientras avanza de manera incremental a lo largo de una trayectoria generalmente hacia delante. Cada repetición del patrón de pata de ave hace avanzar el robot 100 a lo largo de una trayectoria generalmente hacia delante, y la ejecución repetida del patrón de pata de ave puede permitir al robot 100 recorrer la superficie de suelo en la trayectoria generalmente hacia delante. En el patrón de hilera de maíz, el robot 100 se mueve de un lado a otro por una habitación de modo que el robot 100 se mueve perpendicular al movimiento longitudinal del patrón ligeramente entre cada recorrido transversal de la habitación para formar una serie de filas generalmente paralelas que recorren la superficie de suelo. El robot 100 puede ejecutar comportamientos de navegación que utilizan patrones de tipo enredadera y de hilera de maíz cuando el robot 100 recorre la habitación, y un patrón de movimiento rectilíneo cuando el robot 100 se mueve por un perímetro de la habitación o bordes de objetos dentro de la habitación.
Con referencia a la figura 3A, en un ejemplo, el robot 100 se mueve en el patrón de pata de ave mencionado anteriormente a través de un área de huella AF en la superficie de suelo 10 sobre la que se ha aplicado el fluido de limpieza 124. El patrón de pata de ave representado implica mover el robot 100 (i) en un sentido hacia delante F y un sentido hacia atrás o inverso A a lo largo de una trayectoria central 300, (ii) en un sentido hacia delante F y un sentido inverso A a lo largo de una trayectoria izquierda 310, y (iii) en un sentido hacia delante F y un sentido inverso A a lo largo de una trayectoria derecha 305. La trayectoria izquierda 310 y la trayectoria derecha 305 son arqueadas, extendiéndose hacia fuera en un arco desde un punto inicial a lo largo de la trayectoria central 300. Aunque las trayectorias derecha e izquierda 305, 310 se han descrito y mostrado como arqueadas, en otras implementaciones, la trayectoria izquierda y la trayectoria derecha pueden ser trayectorias en línea recta que se extienden hacia fuera en una línea recta desde la trayectoria central.
En el ejemplo de la figura 3A, el robot 100 se mueve en un sentido hacia delante F desde la posición A a lo largo de la trayectoria central 300. Entonces el robot 100 se mueve en un sentido hacia atrás A a lo largo de la trayectoria central con una distancia igual a o mayor que la distancia a cubrir por la aplicación del fluido. Por ejemplo, el robot 100 se mueve hacia atrás a lo largo de la trayectoria central 300 por al menos una longitud de robot Lr hasta la posición G, que puede ser la misma posición que la posición A. El robot 100 aplica el fluido de limpieza 124 a un área sustancialmente igual a o menor que el área de huella AF del robot 100. Cuando el robot vuelve a la pared 20, el paño de limpieza 120 pasa a través del fluido de limpieza 124 y limpia la superficie de suelo 10. Desde la posición B, el robot 100 se retrae a lo largo de una trayectoria izquierda 310 o una trayectoria derecha 305 hasta la posición F o posición D, respectivamente, antes de ir hasta la posición E o posición C, respectivamente. En algunos casos, las posiciones C, E pueden corresponder a la posición B. Entonces el robot 100 puede continuar hasta completar sus trayectorias restantes. Cada vez que el robot 100 se mueve hacia delante y hacia atrás a lo largo de la trayectoria central 300, la trayectoria izquierda 310 y la trayectoria derecha 305, el paño de limpieza 120 pasa a través del fluido aplicado 124, elimina la suciedad, los residuos y otras partículas de la superficie de suelo 10, y absorbe el fluido sucio de la superficie de suelo 10. El movimiento de fregado del paño de limpieza 120 combinado con las características de disolvente del fluido de limpieza 124 disuelve y despega las manchas secas y la suciedad. El fluido de limpieza 124 aplicado por el robot 100 levanta los residuos despegados de modo que el paño de limpieza 120 absorbe los residuos en suspensión y los elimina de la superficie de suelo 10.
Con referencia a la figura 3B, el robot 100 puede navegar por una habitación 320 siguiendo un recorrido 325 que ejecuta una combinación del patrón tipo enredadera y el patrón de hilera de maíz descritos anteriormente para cubrir la superficie de suelo 10 de la habitación. Cada fila del patrón de hilera de maíz está separada de las filas adyacentes por una distancia D. En este ejemplo, el robot 100 funciona en un modo de limpieza que requiere el uso del fluido de limpieza 124, de modo que el robot 100 aplica el fluido de limpieza 124 rociándolo delante del robot 100 a lo largo del recorrido 325. El robot 100 avanza a lo largo del recorrido 325 realizando el patrón tipo enredadera, que incluye repeticiones del patrón de pata de ave a lo largo de cada longitud del patrón de hilera de maíz. Con cada patrón de pata de ave, como se describe en el presente documento, el robot 100 termina en una ubicación que generalmente está en un sentido hacia delante con respecto a su ubicación inicial.
El recorrido 325 permite que el robot 100 limpie una zona 326 de la habitación, aunque el patrón tipo enredadera y de hilera de maíz del recorrido 325 puede hacer que el robot 100 no limpie una zona 327 de la habitación. La zona 327 que, por ejemplo, puede ser un pasillo estrecho, tiene una anchura W. En algunos casos, la anchura W de la zona 327 es menos que dos veces una distancia D entre filas del patrón de hilera de maíz. Como resultado, cuando el robot 100 ejecuta el patrón de hilera de maíz, el robot 100 puede entrar en contacto con la pared 20 sin entrar en la zona 327 y así puede ocurrir que no pueda limpiar la zona 327 simplemente utilizando el patrón de hilera de maíz. Como se describe en el presente documento, el robot 100, en algunas implementaciones, puede detectar una puerta 328 u otra zona estrecha con una anchura menor de aproximadamente 2 anchuras de robot que separa la zona 327 del resto de la habitación 320 basándose en una rutina de seguimiento de pared.
El comportamiento de seguimiento de pared permite al robot 100 limpiar a lo largo de una interfaz pared/suelo (por ejemplo, la interfaz pared-suelo 30 de la figura 1), limpiar esquinas de la habitación, y encontrar y limpiar zonas no limpias adyacentes a la superficie de pared 20, tal como la zona 327. Con referencia a la figura 3C, después de la limpieza del área realizada utilizando el patrón de hilera de maíz y tipo enredadera, el robot 100 puede realizar un seguimiento de pared para limpiar el perímetro de la habitación. El robot 100 sigue un recorrido 350 a medida que implementa el patrón de movimiento rectilíneo acercándose continuamente a la superficie de pared 20 con un pequeño ángulo y con una fuerza relativamente constante aplicada al robot 100. Como el robot 100 funciona en un modo de limpieza que utiliza el fluido de limpieza 124, el robot aplica el fluido de limpieza 124 delante del robot 100 a lo largo del recorrido 350. En algunos ejemplos, la entrada en contacto con la superficie de pared con un pequeño ángulo (por ejemplo, el borde del robot y la pared no son paralelos entre sí) puede proporcionar la ventaja de presionar una parte del paño de limpieza contra la superficie de pared de modo que el paño de limpieza limpie todo el suelo hasta la pared. En algunos ejemplos, la entrada en contacto con la superficie de pared con un pequeño ángulo puede proporcionar la ventaja de permitir que el robot determine que está colocado contra la pared (por ejemplo, extendiéndose el paño hacia la pared) sin hacer que el contacto y la fricción entre el robot y la superficie de pared impidan el movimiento del robot en el sentido hacia delante.
Como se describe en el presente documento, las técnicas de seguimiento de pared pueden permitir al robot 100 limpiar áreas que pueden haberse dejado durante el comportamiento de hilera de maíz y de tipo enrejado a lo largo del recorrido 325 de la figura 3B. En algunos casos, simplemente ejecutar el comportamiento de hilera de maíz y de tipo enrejado puede hacer que el robot 100 pase por alto limpiar determinadas zonas de la habitación debido a, por ejemplo, obstáculos, características geométricas de la habitación y características geométricas del robot 100. Como el robot 100 sigue la superficie de pared 20, el robot 100 puede entrar en la zona 327 de la habitación 320, y un controlador del robot 100 puede determinar que el robot 100 no limpió la zona 327 durante el patrón de hilera de maíz y tipo enredadera ejecutado anteriormente. En algunos casos, tras encontrar la zona 327, el robot 100 puede ejecutar un patrón de hilera de maíz y tipo enredadera subsiguiente dentro de la zona 327. En otros casos, el robot 100 puede ejecutar un seguimiento de pared, y el controlador puede determinar que el seguimiento de pared por la pared 20 de la zona 327 es suficiente para limpiar la superficie de suelo de la zona 327.
Con referencia a la figura 3D, en otro ejemplo, el robot 100 navega alrededor de una habitación 372 con un obstáculo 375. El robot 100 ejecuta un patrón de limpieza de área tal como el patrón de hilera de maíz a través de la habitación 372 siguiendo un recorrido 380 para limpiar una zona 382 de la habitación 372. Sin embargo, debido al contacto con el obstáculo 375 (por ejemplo, un váter), las filas 380a, 380b del recorrido 380 son más cortas que las demás filas, y por tanto el robot 100 no limpia una zona 384. Por tanto, una zona (por ejemplo, la zona 384) detrás de u ocultada por un obstáculo (por ejemplo, el obstáculo 375) que es accesible por el robot puede quedar sin recorrerse durante un comportamiento de limpieza de área.
Después de que el robot 100 complete el recorrido de hilera de maíz y de tipo enrejado 380, con referencia a la figura 3E, el robot 100 ejecuta un seguimiento de pared a lo largo del perímetro de la zona 384, por ejemplo, aproximándose a la pared 20 de la habitación 372 y siguiendo un recorrido 390. El robot 100 mantiene el contacto con la pared 20 manteniendo una extensión de parachoques promedio dentro de un rango especificado a medida que se acerca a la pared 20 para limpiar a lo largo de la pared 20 de la habitación 372. El recorrido 390 permite que el robot 100 limpie detrás del obstáculo 375, donde anteriormente el robot 100 no podía alcanzar en el patrón de hilera de maíz y tipo enredadera.
En algunos casos, la zona 384 puede ser suficientemente grande como para garantizar la ejecución de un patrón de hilera de maíz y tipo enredadera subsiguiente en la zona 384. Cuando el robot 100 limpia a lo largo de la pared 20, el robot 100 puede reconocer que el límite definido por la pared 20 puede no coincidir con un límite determinado por el controlador cuando el robot 100 ejecuta el patrón de hilera de maíz. Entonces el robot 100 puede proceder a encontrar el obstáculo 375 y limpiar alrededor del obstáculo 375 siguiendo un recorrido de obstáculo 391. El robot 100 implementa el comportamiento de seguimiento de pared a lo largo de las superficies laterales definidas por el obstáculo 375 de modo que el robot puede limpiar la interfaz entre el obstáculo 375 y la superficie de suelo 10.
Utilizando el patrón de hilera de maíz y de enrejado, el robot 100 puede no entrar en pasillos que sean sólo ligeramente más grandes que la anchura del robot (por ejemplo, de 1 a 1,2 veces más grandes, 1,2 a 1,4 veces más grandes, 1,4 a 1,6 veces más grandes, 1,6 a 1,8 veces más grandes, 1,8 a 2 veces más grandes). En otro ejemplo, ahora con referencia a las figuras 3F a 3H, el robot 100 limpia un entorno 392 que tiene una primera habitación 393 y una segunda habitación 394 separadas por una puerta de acceso 395. La segunda habitación 394 es suficientemente grande como para garantizar que el robot 100 ejecute un patrón de hilera de maíz y de enrejado. Como se muestra en la figura 3F, el robot 100 ejecuta un patrón de cobertura de área 396, por ejemplo, un patrón de hilera de maíz y tipo enredadera, para limpiar la primera habitación 393. Utilizando el patrón de cobertura de área 396, el robot 100 no limpia la puerta de acceso 395 y la segunda habitación 394 porque, como el robot 100 ejecuta la fila 396a del patrón de cobertura de área, el robot 100 entra en contacto con la superficie de pared 20 del entorno 392 y no puede entrar en la segunda habitación 394 a través del pasillo 395. Cada fila del patrón de hilera de maíz está separada de las filas adyacentes por una distancia Dr, que es aproximadamente la anchura del robot 100. El pasillo 395 tiene una anchura Wd. En algunos casos, la anchura Wd es menor que dos veces la distancia Dr. Como se muestra en la figura 3G, el robot 100, tras completar el patrón de cobertura de área 396 en la primera habitación 393, ejecuta un patrón de seguimiento de pared 397. El robot 100, siguiendo el patrón de seguimiento de pared 397, puede desplazarse a través del pasillo 395 y acceder a la segunda habitación 394. Ahora con referencia a la figura 3H, la segunda habitación 394 es suficientemente grande como para que el robot 100 pueda ejecutar un patrón de cobertura de área 398 para limpiar la segunda habitación 394. El robot 100, tras acceder a la segunda habitación 394 utilizando el patrón de seguimiento de pared 397 mostrado en la figura 3G, ejecuta el patrón de cobertura de área 398 para limpiar la segunda habitación 394.
Con referencia a la figura 4, un ejemplo de un sistema de control 400 del robot 100 incluye un circuito controlador 405 (denominado en el presente documento también controlador) que hace funcionar un accionador 410, un sistema de limpieza 420, un sistema sensor 430 que tiene un sistema sensor de parachoques 435, un sistema de comportamiento 440, un sistema de navegación 450 y una memoria 460.
El accionador 410 puede incluir ruedas (por ejemplo, las ruedas 121 mostradas en la figura 1B) para realizar maniobras con el robot 100 a través de la superficie de suelo basándose en una orden de accionamiento que tiene componentes x, y, y 0. Las ruedas del accionador 410 soportan el cuerpo de robot por encima de la superficie de suelo. El controlador 405 puede hacer funcionar además un sistema de navegación 450 configurado para realizar maniobras con el robot 100 por la superficie de suelo. El sistema de navegación 450 basa sus órdenes de navegación en el sistema de comportamiento 440, que puede seleccionar un patrón o comportamiento de navegación almacenado en la memoria 460. El sistema de navegación 450 también se comunica con el sistema sensor 430, utilizando el sensor antichoque, acelerómetros, y otros sensores del robot, para determinar y proporcionar órdenes de accionamiento al accionador 410.
El sistema sensor 430 puede incluir adicionalmente un acelerómetro de 3 ejes, un giroscopio de 3 ejes y codificadores rotatorios para las ruedas (por ejemplo, las ruedas 121 mostradas en la figura 1B). El controlador 405 puede utilizar la aceleración lineal detectada del acelerómetro de 3 ejes para estimar la desviación en las direcciones x e y también y puede utilizar el giroscopio de 3 ejes para estimar la desviación en el rumbo o la orientación 0 del robot 100. Por tanto, el controlador 405 puede combinar los datos recopilados por los codificadores rotatorios, el acelerómetro y el giroscopio para producir estimaciones de la posición general (por ejemplo, ubicación y orientación) del robot 100. En algunas implementaciones, el robot 100 puede utilizar los codificadores, el acelerómetro y el giroscopio de modo que el robot 100 permanezca en filas generalmente paralelas cuando el robot 100 implementa un patrón de hilera de maíz. El giroscopio y los codificadores rotatorios en conjunto pueden utilizarse adicionalmente por el controlador 405 para realizar algoritmos de navegación por estima para determinar la ubicación del robot 100 dentro de su entorno. El sistema sensor 430 también incluye los sensores de corriente 123 para las ruedas 121 (mostrados en la figura 1B). El controlador 405 puede utilizar la corriente detectada del sensor de corriente 123 para determinar la cantidad de corriente que se suministra a cada rueda 121 y a continuación estimar una velocidad de la rueda 121.
El controlador 405 hace funcionar el sistema de limpieza 420 para iniciar, por ejemplo, órdenes de pulverización durante una determinada duración a una determinada frecuencia. Las órdenes de pulverización pueden proporcionarse según los programas de pulverización almacenados en la memoria 460. El controlador 405 también puede hacer funcionar el sistema de limpieza 420 para hacer vibrar el paño de limpieza 120 para fregar la superficie del suelo 10.
El sistema sensor de parachoques 435 del sistema sensor 430 incluye los conjuntos de sensor de parachoques 112L y 112R que detectan el contacto del parachoques 110 con objetos en el entorno. El controlador 405 puede implementar el sistema sensor de parachoques 435 interpretando las tensiones producidas por los conjuntos de sensor de parachoques 112L y 112R.
Con referencia de nuevo a las figuras 2A a 2C, utilizando las señales del sistema sensor de parachoques 435, el controlador 405 puede determinar una extensión con la que se comprime la parte izquierda 110L del parachoques 110 (denominada en el presente documento también extensión de parachoques izquierda), y una extensión con la que se comprime la parte derecha 110R del parachoques 110 (denominada en el presente documento también extensión de parachoques derecha). En otros casos, el sistema sensor de parachoques 435 puede detectar que tanto la parte izquierda 110L como la parte derecha 110R están en un estado de compresión, lo que puede indicar el contacto con un obstáculo en el sentido hacia delante F del robot 100, como se muestra en la figura 2A. La extensión de parachoques izquierda y la extensión de parachoques derecha pueden ser en cada caso una cantidad de compresión entre el estado comprimido del parachoques 110 y el estado no comprimido del parachoques 110.
Con referencia de nuevo a la figura 1H, la posición de los imanes 170L y 170R con respecto a los sensores 176L y 176R puede establecerse de modo que los imanes 170L y 170R se muevan con respecto a los sensores 176L y 176R cuando el parachoques 110 se comprime. Como resultado, la tensión generada por los sensores 176L y 176R cambia a medida que se comprime el parachoques 110. En particular, la tensión generada por el sensor 176L, 176R aumenta a medida que el imán 170L, 170R se acerca más al sensor 176L, 176R debido a la compresión del parachoques 110, que incluye el chasis de parachoques 171 que alberga el sensor 176L, 176R. Por tanto, las extensiones de parachoques izquierda y derecha son linealmente proporcionales a las tensiones generadas. El controlador 405 del robot 100 puede normalizar la extensión de parachoques izquierda y la extensión de parachoques derecha como un porcentaje, y puede determinar una extensión de parachoques promedio de la extensión de parachoques izquierda y la extensión de parachoques derecha. Para cada operación de limpieza, el controlador 405 también puede calibrar dinámicamente la extensión de parachoques izquierda y la extensión de parachoques derecha de modo que el 0% corresponda al parachoques 110 en el estado no comprimido y el 100% corresponda al parachoques 110 en el estado comprimido. Un porcentaje negativo puede indicar una extensión del parachoques 110. Como se describe en el presente documento, el sistema de control 400 puede utilizar el sistema sensor de parachoques 435 y las extensiones de parachoques izquierda y derecha detectadas para implementar comportamientos de seguimiento de pared que permiten que el robot 100 rastree la superficie de una pared u otro obstáculo (tal como un accesorio de baño) y de este modo limpie esquinas y hendiduras de difícil acceso definidas por intersecciones de superficies de suelo y superficies de pared. Por ejemplo, cuando siga una pared, el parachoques 110 del robot 100 se comprimirá parcialmente debido a la fricción entre el parachoques 110 y la pared. El robot 100 puede mantener el contacto con la pared manteniendo la extensión de compresión del parachoques y la diferencia entre la compresión del parachoques izquierda y derecha ajustando de manera continua las velocidades de rotación y traslación del robot 100 para mantener una compresión casi constante.
En otros casos, el robot 100 puede calcular una diferencia entre la extensión de parachoques izquierda y la extensión de parachoques derecha. Una diferencia positiva indica que la extensión de parachoques izquierda es mayor que la extensión de parachoques derecha, y una diferencia negativa indica que la extensión de parachoques derecha es mayor que la extensión de parachoques izquierda. Cuando el robot 100 realiza un seguimiento de pared de modo que la parte izquierda 110L del parachoques 110 es adyacente a la superficie de pared 20a, el robot 100 puede mantener la diferencia para que esté dentro de un rango de, por ejemplo, el 0% al 10%, el 5% al 15%, el 4% al 20%. Cuando el robot 100 está siguiendo la pared de modo que la parte derecha 110R del parachoques 110 es adyacente a la superficie de pared 20a, el controlador 405 del robot 100 puede mantener la diferencia para que esté dentro de un rango de, por ejemplo, el 5% al -15%, el -10% al 0%, el -20% al -4%, proporcionando órdenes de accionamiento al accionador 410. El controlador 405 puede determinar alternativamente un promedio de la extensión de parachoques izquierda y la extensión de parachoques derecha.
La memoria 460 puede estar cargada con umbrales y límites relacionados con las extensiones de parachoques promedio normalizadas, como se describe en el presente documento. La memoria 460 también puede estar cargada con un resultado de calibración estática realizado durante la fabricación del robot 100. La calibración estática puede definir un rango en el que el robot considera que la calibración dinámica descrita es válida. En algunos ejemplos, cuando el robot se utiliza repetidamente, las posiciones de las espigas que sujetan el parachoques cambian por una cantidad reducida. Para tener en cuenta estos cambios, puede utilizarse un proceso de calibración para determinar si han cambiado la posición no comprimida del parachoques y la lectura del sensor asociada. Esta calibración puede realizarse al poner en marcha el robot antes de cada trabajo de limpieza y/o puede realizarse dinámicamente cada 5-10 segundos durante la limpieza.
Con referencia de nuevo a las figuras 1A, 3C y 4, a medida que el robot 100 sigue la pared 20 de la habitación 320, el robot 100 puede implementar procesos específicos que permiten que el robot 100 limpie la superficie de suelo 10 en contacto estrecho con la superficie de pared 20. El controlador 405 puede controlar el movimiento del cuerpo de robot 102 para hacer que el cuerpo 102 rastree la superficie de pared 20 basándose en un valor de la extensión de parachoques promedio. El valor se basa en la señal o señales generadas por el sistema sensor de parachoques 435 (por ejemplo, los conjuntos de sensor de parachoques 112L y 112R) y puede indicar que el parachoques 110 está parcialmente comprimido de modo que los valores estén dentro de un intervalo o rango de compresión entre el estado no comprimido y el estado comprimido. Entonces el controlador 405 puede determinar si el parachoques 110 está dentro del intervalo o rango de compresión (por ejemplo, basándose en la extensión de parachoques normalizada). Por ejemplo, el controlador 405 puede determinar que el parachoques ha alcanzado un nivel de compresión umbral para el seguimiento de pared, por ejemplo, del 2% al 2,5%, 2,5% al 3%, 3% al 3,5%, 3,5% al 4%, 4% al 4,5%, 4,5% al 5%, 5% al 5,5%, 5,5% al 6%, 6% al 6,5%, 6,5% al 7%, 7% al 7,5%. Entonces pueden ejecutarse procesos de seguimiento de pared y continuar sin cesar mientras que el parachoques permanezca comprimido dentro de un rango predefinido entre el estado comprimido y el no comprimido (por ejemplo, del 2% al 5%, 2,5% al 7,5%, 5% al 10%, 5% al 15%, 7,5% al 12,5%, 10% al 15%, 5% al 20%, 10% al 20%). Es decir, los procesos de seguimiento de pared continúan mientras que la cantidad de fuerza entre el parachoques y el robot permanezca dentro de un rango especificado. El robot 100 puede mantener la cantidad de fuerza dentro del rango especificado ajustando de manera continua las velocidades de rotación y traslación del robot 100 para mantener una compresión casi constante del parachoques. Si la cantidad de compresión supera el umbral superior (por ejemplo, el 20%), entonces pueden detenerse los procesos de seguimiento de pared, y otros procesos pueden asumir el control del robot para o bien restablecer el recorrido transversal del patrón o volver a acercarse a una pared u otro obstáculo para continuar con el seguimiento de pared, como se describe en el presente documento.
Dentro del rango o intervalo predefinido, el controlador 405 del robot 100 también puede mantener la extensión de parachoques promedio y, en algunos casos, una diferencia entre las extensiones de parachoques izquierda y derecha ajustando de manera continua sus velocidades de rotación y traslación para mantener una compresión casi constante. Durante el seguimiento de pared, el robot 100 puede desplazarse a una velocidad de traslación nominal (por ejemplo, de 50 mm/s a 150 mm/s, 150 mm/s a 250 mm/s, 250 mm/s a 350 mm/s) sin rotar. Cuando la extensión de parachoques promedio se desvía de una extensión de parachoques promedio objetivo almacenada en la memoria 460, el controlador 405 puede proporcionar una orden de accionamiento al accionador 410 para reducir la velocidad del robot 100 una cantidad proporcional a la desviación. Cuando la diferencia de extensión de parachoques se desvía de una diferencia objetivo almacenada en la memoria 460, el controlador 405 puede proporcionar una orden de accionamiento al accionador 410 para aumentar la velocidad de rotación del robot 100 una cantidad proporcional a la desviación. En algunas implementaciones, las velocidades de rotación y traslación pueden ajustarse una cantidad proporcional a la tasa de cambio de la extensión de parachoques promedio y la diferencia de extensión de parachoques, respectivamente.
En algunos casos la posición no comprimida puede variar de una operación de limpieza a otra debido a variaciones de posición en las espigas elásticas 164 (mostradas en la figura 1F) que montan el parachoques 110 en el cuerpo de robot 102. Durante una operación de limpieza, el controlador 405 puede calibrar dinámicamente la posición no comprimida para tener en cuenta las variaciones en una posición del parachoques 110 con respecto al cuerpo de robot 102. El controlador 405 puede calibrar una posición inicial del parachoques (cuando el parachoques no está en contacto con una superficie de pared) con respecto a las espigas elásticas 164 al inicio de la operación de limpieza. Por ejemplo, pueden establecerse las señales de tensión de los conjuntos de sensor de parachoques 112L y 112R mientras que el parachoques está en la posición neutra para que corresponda a la posición no comprimida. Dicho de otro modo, estas señales de tensión pueden indicar una extensión de parachoques promedio normalizada del 0%. Como se describió anteriormente, la memoria 460 puede incluir un rango de tensiones válidas (y por tanto, un rango de calibraciones válidas) que en general puede indicar una extensión de parachoques promedio normalizada del 0%
Las figuras 5A a 5F muestran un ejemplo de comportamiento que puede implementar el robot 100 para limpiar a lo largo de la pared 20 de una habitación. En este ejemplo, la superficie de pared 20 incluye una esquina interior 500, que está definida por la intersección de una superficie de pared 20a y una superficie de pared 20b.
Con referencia a la figura 5A, el robot 100 se aproxima a la esquina interior 500 ejecutando un comportamiento de seguimiento de pared. Durante el comportamiento de seguimiento de pared, el robot 100 coloca el paño de limpieza contra la superficie de pared 20a de modo que el paño de limpieza pueda limpiar la interfaz entre la pared 20 y la superficie de suelo 10 (por ejemplo, la interfaz pared-suelo 30 de la figura 1). El robot 100 puede conseguir tal proximidad con la superficie de pared 20 entrando en contacto con la superficie de pared 20a con el parachoques 110 del robot 100. El contacto es con un pequeño ángulo (por ejemplo, entre aproximadamente 1 grado y aproximadamente 10 grados, entre aproximadamente 3 grados y aproximadamente 15 grados, entre aproximadamente 3 grados y aproximadamente 20 grados, entre aproximadamente 5 grados y aproximadamente 20 grados, entre aproximadamente 3 grados y aproximadamente 10 grados, entre aproximadamente 10 grados y aproximadamente 20 grados) para mantener una fuerza de contacto suficiente entre la pared 20 y el parachoques 110 y para continuar con el seguimiento de pared al menos mientras se mantenga la fuerza. En este ejemplo, el robot 100 entra en contacto con la superficie de pared 20a con la parte derecha 110R del parachoques 110 de modo que el paño de limpieza pueda seguir la interfaz pared-suelo (por ejemplo, la interfaz pared-suelo 30 de la figura 1). Se detecta un contacto suficiente para el seguimiento de pared cuando la cantidad de fuerza entre el parachoques y la pared está dentro de un rango de compresión deseado con el parachoques 110 parcialmente comprimido.
Durante el seguimiento de pared, el robot 100 puede colocarse contra la pared para mantener el parachoques 110 en un estado parcialmente comprimido de modo que la extensión de parachoques promedio esté dentro de un intervalo predeterminado (por ejemplo, el intervalo o rango de compresión), que puede ser, por ejemplo, del 0% al 5%, 2,5% al 7,5%, 5% al 10%, 5% al 15%, 5% al 20%, 7,5% al 10%, 7,5% al 12,5%, 10% al 15%, 10% al 20%. En algunos ejemplos, por encima de este intervalo, el robot 100 puede presionar el parachoques 110 contra la superficie de pared 20a con demasiada fuerza, lo que puede impedir el movimiento hacia delante del robot 100 y/o indicar un obstáculo. Por debajo de este intervalo, puede ser que el robot 100 no presione el parachoques 110 lo suficiente contra la superficie de pared 20b para permitir que el paño de limpieza 120 alcance las hendiduras y esquinas definidas por la superficie de suelo 10 y la superficie de pared 20a. Si el controlador 405 detecta una fuerza por encima del intervalo anterior, el controlador 405 puede iniciar operaciones para alejar el robot de la pared, y o bien volver a acercarlo a la pared (para un seguimiento de pared adicional) o separarlo de la pared. Si el controlador 405 detecta una fuerza por debajo del intervalo anterior, el controlador puede iniciar operaciones para mover el robot para entrar en contacto adicionalmente con la pared o comenzar un patrón de cobertura, tal como el patrón de hilera de maíz y tipo enredadera.
Con referencia a la figura 5B, en este ejemplo, el robot 100 sigue la superficie de pared 20a hasta que entra en contacto con la superficie de pared 20b con la parte anterior 110F del parachoques 110. Tras poner en contacto la superficie de pared 20b con la parte anterior 110F, la extensión de parachoques promedio aumenta más allá de una extensión de parachoques de umbral superior para el seguimiento de pared, indicando que el robot 100 está empujando contra una superficie (por ejemplo, la superficie de pared 20b) con la parte anterior 110F del parachoques 110. El umbral superior de la extensión de parachoques promedio normalizada puede ser, por ejemplo, del 7% al 8%, 7,5% al 8%, 8% al 9%, 9% al 10%, 10% al 11%, 11% al 12%, 12 al 13%, 13% al 14%, 14% al 15%, 15% al 16%, 16% al 17%, 17% al 18%, 18% al 19%, 19% al 20%. En algunos casos, basándose en las señales de los sensores de corriente 123 y/o los codificadores, el controlador 405 puede determinar que las ruedas del robot 100 se están moviendo más despacio que una velocidad predeterminada, indicando así que el robot 100 ya no está avanzado a lo largo de la superficie de pared 20a. Puede estimarse una fuerza sobre el parachoques 110 del robot 100 basándose en la velocidad de las ruedas en comparación con la corriente suministrada a las ruedas. La velocidad de una rueda dividida entre la corriente suministrada a la rueda es proporcional a la fuerza sobre la rueda, de modo que el controlador 405 puede calcular una fuerza sobre cada rueda. El controlador 405 puede determinar la velocidad de las ruedas basándose en señales de los codificadores que pueden funcionar con las ruedas y la corriente de las ruedas basándose en las señales de los sensores de corriente 123 de las ruedas. Entonces el controlador 405 puede estimar la fuerza sobre cada rueda, calcular la diferencia entre las fuerzas estimadas y calcular el momento de fuerza con respecto a un centro de masa del robot basándose en la diferencia. El controlador 405 puede calcular una fuerza sobre el parachoques 110 basándose en el momento de fuerza. En algunas implementaciones, la memoria 460 puede incluir un rango de fuerza objetivo (por ejemplo, de 0,1 N a 0,2 N, 0,1 N a 0,3 N, 0,1 N a 0,5 N, 0,5 N a 1 N) que el controlador 405 puede mantener mientras que el parachoques 110 entra en contacto con superficies orientadas verticalmente.
En las figuras 5C, 5D y 5E, el robot 100 busca volver a adoptar el comportamiento de seguimiento de pared a lo largo de la superficie de pared 20b (por ejemplo, en la otra pared de la esquina). Con referencia a la figura 5C, cuando la extensión de parachoques promedio supera la extensión de parachoques umbral, el robot 100 puede responder deteniendo el movimiento hacia delante y accionando el robot 100 a la inversa de modo que el robot 100 se aleje de la superficie de pared 20b de forma que el parachoques 110 ya no esté en un estado comprimido. El robot 100 puede seguir retrocediendo hasta que la extensión de parachoques promedio disminuya por debajo de un umbral inferior de la extensión de parachoques, que puede ser, por ejemplo, del 7,5% al 7%, 7% al 6%, 6% al 5%, 5% al 4%, 4% al 3%, 3% al 2%, 2% al 1%, 1% al 0%, menor del 0%. Una vez que la extensión de parachoques promedio disminuye por debajo del umbral inferior, el robot 100 puede seguir retrocediendo de modo que el parachoques 110 esté a una distancia de retroceso predeterminada BD con respecto a la superficie de pared 20b. La distancia BD puede seleccionarse de modo que el robot 100 tenga espacio suficiente para dar la vuelta y comenzar con el seguimiento de pared a lo largo de la superficie de pared 20b. En algunos casos, la distancia BD puede ser, por ejemplo, de 5 mm a 10 mm, 10 mm a 15 mm, 15 mm a 20 mm, 20 mm a 25 mm, 25 mm a 30 mm, 30 mm a 35 mm, aproximadamente 10 mm, aproximadamente 20 mm, aproximadamente 30 mm. El controlador 405 puede estimar la distancia del parachoques 110 con respecto a la superficie de pared 20b utilizando señales proporcionadas por el acelerómetro y/o los codificadores de ruedas del sistema sensor 430 y puede comparar la distancia estimada con la distancia BD.
Con referencia a la figura 5D, en este ejemplo, el robot 100 se aleja de la superficie de pared 20a de modo que el robot 100 puede orientar su sentido de avance F en un sentido sustancialmente paralelo con la superficie de pared 20b (por ejemplo, perpendicular al sentido de desplazamiento anterior en los casos de una esquina de 90 grados). Con referencia a la figura 5E, entonces el robot 100 vuelve a adoptar el comportamiento de seguimiento de pared con la superficie de pared 20b. En este momento, el robot 100 puede seguir acercando la parte derecha 110R del parachoques 110 a la superficie de pared 20b hasta que la extensión de parachoques promedio está dentro del intervalo predeterminado descrito en el presente documento. Después de que el robot 100 haya vuelto a adoptar el comportamiento de seguimiento de pared, ahora con referencia a la figura 5F, el robot 100 sigue ejecutando el comportamiento de seguimiento de pared a lo largo de la superficie de pared 20b manteniendo la fuerza contra la pared de modo que la extensión de parachoques promedio permanezca dentro del intervalo predeterminado. El robot 100 puede hacer que aumente la extensión de parachoques manteniendo el contacto de la parte derecha 110R del parachoques 110 con la superficie de pared 20b.
Las figuras 6A a 6E ilustran un ejemplo de comportamiento que puede implementar el robot 100 para limpiar la pared 20 que incluye una esquina exterior 600, que está definida por la intersección de una superficie de pared 20c y una superficie de pared 20d.
Con referencia a la figura 6A, el robot 100 se aproxima a la esquina exterior 600 ejecutando un comportamiento de seguimiento de pared. Durante el comportamiento de seguimiento de pared, el robot 100 coloca el paño de limpieza muy cerca de la superficie de pared 20c de modo que el paño de limpieza pueda limpiar la interfaz entre la superficie de suelo 10 y la pared 20 (por ejemplo, la interfaz pared-suelo 30 de la figura 1). El robot 100 puede conseguir tal proximidad con la superficie de pared 20 entrando en contacto con la superficie de pared 20c con el parachoques 110 del robot 100, o bien tangencialmente o bien con un pequeño ángulo (por ejemplo, entre aproximadamente 1 grado y aproximadamente 10 grados, entre aproximadamente 3 grados y aproximadamente 15 grados, entre aproximadamente 3 grados y aproximadamente 20 grados, entre aproximadamente 5 grados y aproximadamente 20 grados, entre aproximadamente 3 grados y aproximadamente 10 grados, entre aproximadamente 10 grados y aproximadamente 20 grados) entre la superficie de pared 20 y el parachoques 110. Por ejemplo, el robot 100 entra en contacto con la superficie de pared 20c con la parte derecha 110R del parachoques 110 de modo que el paño de limpieza pueda seguir la interfaz pared-suelo. Durante el seguimiento de pared, el robot 100 puede mantener la compresión del parachoques 110 de modo que la extensión de parachoques promedio esté dentro del intervalo predeterminado descrito en el presente documento. Por encima de este intervalo, el robot 100 puede estar presionando el parachoques 110 contra la superficie de pared 20c con demasiada fuerza, lo que puede impedir el movimiento hacia delante del robot 100. Por debajo de este intervalo, el robot 100 puede no estar presionando el parachoques 110 lo suficiente contra la superficie de pared 20d para permitir que el paño de limpieza 120 alcance las hendiduras y esquinas definidas por la superficie de suelo 10 y la superficie de pared 20c. En algunas implementaciones, umbrales de fuerza más pequeños pueden aumentar el efecto relativo de ruido, haciendo que sea más probable que el robot 100 no pueda seguir de cerca las esquinas.
Con referencia a la figura 6B, en un ejemplo implementación, el robot 100 sigue la superficie de pared 20c hasta que detecta que la extensión de parachoques promedio ya no está dentro del intervalo predeterminado. En particular, el robot 100 puede detectar que el parachoques 110 ha perdido el contacto con la superficie de pared 20c y que la extensión de parachoques promedio está por debajo de una extensión de parachoques de umbral inferior (por ejemplo, el parachoques 110 ya no está parcialmente presionado). Cuando la parte derecha 110R del parachoques 110 pierde el contacto con la superficie de pared 20c, en este ejemplo, la extensión de parachoques promedio disminuye por debajo de la extensión de parachoques de umbral inferior porque la fuerza de fricción entre la superficie de pared 20c y la parte derecha 110R ya no comprime el parachoques 110. La disminución en la extensión de parachoques promedio indica que el robot 100 ya no está siguiendo la pared. El umbral inferior de la extensión de parachoques puede ser, por ejemplo, del 7,5% al 7%, 7% al 6%, 6% al 5%, 5% al 4%, 4% al 3%, 34% al 2%, 2% al 1%, 1% al 0%, menor del 0%. Tras detectar que el parachoques 110 ha perdido el contacto, el robot 100 puede detener el movimiento hacia delante.
En las figuras 6C y 6D, el robot 100 busca volver a adoptar el comportamiento de seguimiento de pared a lo largo de la superficie de pared 20d. Con referencia a las figuras 6C y 6D, cuando la extensión de parachoques promedio está por debajo de la extensión de parachoques de umbral inferior, el robot 100 puede responder girando hacia el sentido de la pared seguida originalmente 20c y haciendo avanzar lentamente el robot 100 hasta que la parte derecha 110R del parachoques 110 se acerca a la superficie de pared 20d. En algunas implementaciones, tras determinar que el parachoques promedio está por debajo de la extensión de parachoques de umbral inferior, el controlador 405 del robot 100 puede proporcionar una orden de accionamiento al accionador 410 para hacer que las ruedas del robot 100 inviertan el sentido para mover el robot 100 en el sentido hacia atrás A. Después de que el controlador 405 determine que el robot 100 se ha movido la distancia predeterminada en el sentido hacia atrás A basándose en, por ejemplo, señales de los codificadores de las ruedas, el controlador proporciona una orden de accionamiento al accionador 410 que hace que las ruedas del robot 100 giren el robot 100 de modo que el sentido de avance F sea sustancialmente paralelo a la superficie de pared 20d. En algunos casos, la orden de accionamiento hace que las ruedas giren el robot 100 de modo que el sentido de avance F forme el ángulo pequeño (por ejemplo, entre aproximadamente 1 grado y aproximadamente 10 grados, entre aproximadamente 3 grados y aproximadamente 15 grados, entre aproximadamente 3 grados y aproximadamente 20 grados, entre aproximadamente 5 grados y aproximadamente 20 grados, entre aproximadamente 3 grados y aproximadamente 10 grados, entre aproximadamente 10 grados y aproximadamente 20 grados) con la superficie de pared 20d.
Después de que el robot 100 haya vuelto a adoptar el comportamiento de seguimiento de pared con la superficie de pared 20d, ahora con referencia a la figura 6E, el robot 100 sigue ejecutando el comportamiento de seguimiento de pared a lo largo de la superficie de pared 20b manteniendo la extensión de parachoques promedio dentro del intervalo predeterminado.
Con referencia de nuevo a la figura 3B, en algunas implementaciones, el robot puede detectar una puerta de acceso328 al acercarse a la superficie de pared 20 en los puntos 325a y 325b que flanquean el pasillo 328. En los puntos 325a y 325b, el robot 100 entra en contacto con la superficie de pared 20 de modo que aproximadamente sólo la mitad de la parte anterior del parachoques está en contacto con la superficie de pared 20. En algunos casos, aproximadamente del 25% al 75%, 40% al 60%, 45% al 55% de la parte anterior del parachoques está en contacto con la superficie de pared 20. En el punto 325a, el controlador 405 del robot 100, basándose en la extensión de parachoques detectada por el conjunto de sensor de parachoques izquierdo 112L y la extensión de parachoques detectada por el conjunto de sensor de parachoques derecho 112R, puede determinar que la parte derecha 110R del parachoques 110 se ha acercado a la superficie de pared 20 y la parte izquierda 110L del parachoques 110 no se ha acercado a la superficie de pared 20. Así el controlador 405 puede determinar que la superficie de pared 20 no puede continuar desde donde la parte derecha 110R entra en contacto con la superficie de pared 20 hasta donde está colocada la parte izquierda 110L. En el punto 325b, el controlador 405 puede determinar que la parte izquierda 110L del parachoques 110 se ha acercado a la superficie de pared 20 y que la parte derecha 110R del parachoques 110 no se ha acercado a la superficie de pared 20. Así el controlador 405 puede determinar que la superficie de pared 20 no puede continuar desde donde la parte izquierda 110L entra en contacto con la superficie de pared 20 hasta donde está colocada la parte derecha 110R. Basándose en el contacto con el parachoques 110 en los puntos 325a, 325b, el controlador 405 puede determinar que existe una abertura, tal como el pasillo 328, entre los puntos 325a, 325b. El controlador 405 puede calcular una distancia entre el punto 325a, 325b, que es aproximadamente 2D, y determinar que 328 tiene una anchura W menor que 2D.
Como se muestra en las figuras 5A, 5F, 6A y 6E, el robot 100 sigue las superficies de pared 20a y 20b manteniendo el contacto entre la parte derecha 110R del parachoques 110 con las superficies de pared 20a y 20b. En algunas implementaciones, el robot 100 puede seguir adicional y/o alternativamente las superficies de pared o una superficie orientada verticalmente manteniendo el contacto entre la parte izquierda 110L del parachoques 110 con las superficies de pared. El contacto genera una fricción que produce una compresión del parachoques 110, que el robot intenta mantener dentro del intervalo predeterminado en algunas implementaciones. En algunas implementaciones, el paño de limpieza 120 puede extenderse más allá del parachoques 110, y el paño de limpieza 120 y el parachoques 110 pueden estar configurados de modo que las fuerzas ejercidas sobre el paño de limpieza 120 se transfieran al parachoques 110. Por ejemplo, con referencia a la figura 1G, las espigas elásticas 164 pueden conectar mecánicamente el paño de limpieza 120 con el parachoques 110. Como resultado, las fuerzas de fricción sobre el paño de limpieza 120 pueden comprimir el parachoques y así aumentar la extensión de parachoques promedio.
Con referencia a las figuras 7A a 7D, el robot 100 puede mantener el contacto entre el paño de limpieza 120 y las superficies de pared 20a y 20b manteniendo al mismo tiempo el contacto entre el parachoques 110 y las superficies de pared 20a, 20b, 20c y 20d siguiendo las superficies de pared de modo que el sentido de avance F y las superficies de pared 20a, 20b, 20c y 20d formen un pequeño ángulo 0 (por ejemplo, entre aproximadamente 1 grado y aproximadamente 10 grados, entre aproximadamente 3 grados y aproximadamente 15 grados, entre aproximadamente 3 grados y aproximadamente 20 grados, entre aproximadamente 5 grados y aproximadamente 20 grados, entre aproximadamente 3 grados y aproximadamente 10 grados, entre aproximadamente 10 grados y aproximadamente 20 grados). El intervalo predeterminado puede estar dentro de un intervalo similar al intervalo descrito con respecto a las figuras 5A, 5F, 6A y 6E (por ejemplo, del 0% al 5%, 2,5% al 7,5%, 5% al 10%, 5% al 15%, 5% al 20%, 7,5% al 10%, 7,5% al 12,5%, 10% al 15%, 10% al 20%). En algunos casos, el intervalo predeterminado puede ser mayor que el intervalo predeterminado utilizado en los casos descritos con respecto a las figuras 5A, 5F, 6A y 6E de modo que la cantidad of fricción sea suficiente entre el paño de limpieza 120 y la superficie de pared. Por ejemplo, el intervalo puede ser mayor en, por ejemplo, del 0% al 1%, 1% al 2%, 2% al 3%, 3% al 4%, 4% al 5%, aproximadamente 1%, aproximadamente 2%, aproximadamente 3%. Para comprimir el paño de limpieza 120 en una medida suficiente, el robot 100 puede orientarse de modo que el sentido de avance F del robot 100 forme el ángulo pequeño 0 con las superficies de pared 20a, 20b, 20c y 20d. El ángulo 0 permite que una parte del sentido de avance F empuje el paño de limpieza 120 hacia las superficies de pared 20a, 20b, 20c y 20d, generando así fuerzas de compresión mayores sobre el paño de limpieza 120 y fuerzas de fricción mayores sobre el parachoques 110.
Con referencia a la figura 8, un diagrama de flujo 800 ilustra un procedimiento de ejemplo para implementar un comportamiento de seguimiento de pared.
En la operación 805, un controlador de un robot proporciona una señal de control al robot para seguir una superficie de pared. El controlador puede proporcionar la señal de control después de detectar que el robot ha completado el comportamiento de hilera de maíz y de tipo enredadera. El robot puede estar siguiendo una superficie de pared que tenga una primera parte de superficie y una segunda parte de superficie. Las partes de superficie primera y segunda pueden definir una esquina, como se describe con respecto a las figuras 5A a 5F y 6A a 6E. En algunas implementaciones, el controlador está programado para calibrar dinámicamente una posición del parachoques con respecto al cuerpo de robot. La calibración se produce antes del seguimiento de pared cuando se espera que el robot no esté en contacto con una superficie orientada verticalmente u obstáculo que haga que se comprima el parachoques del robot. Si la posición medida no está dentro de un rango predefinido, el controlador del robot puede proporcionar una orden de accionamiento que haga que el robot se mueva hacia un área abierta para garantizar que el parachoques del robot no entre en contacto con un obstáculo. El controlador también puede proporcionar una orden de accionamiento para detener el movimiento del robot para evitar fuerzas involuntarias sobre el parachoques. El rango predefinido puede ser una calibración estática realizada durante la fabricación, como se describió anteriormente. La calibración dinámica puede producirse antes de que el controlador proporcione una señal de control para seguir la superficie de pared.
En la operación 810, el controlador recibe una señal desde un sensor lineal en el robot. El robot puede estar implementando un seguimiento de pared de modo que un parachoques del robot esté en contacto con una primera superficie de pared. El sensor puede ser, por ejemplo, el conjunto de sensor de parachoques 112R, 112L como se describe en el presente documento. La señal puede ser tensión, corriente, frecuencia, u otra señal eléctrica. El sensor produce una señal variable en respuesta al movimiento de un parachoques con respecto a un cuerpo del robot. La señal cambia en respuesta al contacto entre el parachoques y la superficie de pared, y la señal puede variar linealmente con el movimiento del parachoques con respecto al cuerpo. El controlador puede recibir dos o más señales desde dos o más sensores en el robot. Un primer sensor puede producir una primera señal en respuesta al movimiento del parachoques, y un segundo sensor puede producir una segunda señal en respuesta al movimiento del parachoques. Las señales primera y segunda pueden variar linealmente con el movimiento del parachoques. En algunos ejemplos, la posición del parachoques se determina basándose en un promedio de los dos valores de sensor lineal.
En la operación 815, el controlador determina un valor X indicativo de la compresión de un parachoques en el robot. El valor X puede ser, por ejemplo, una extensión de parachoques. El controlador puede controlar el movimiento del cuerpo del robot basándose en el valor X determinado. El controlador puede hacer que el cuerpo rastree o siga la superficie de pared basándose en el valor X. En casos en los que el robot tiene más de un sensor para detectar el movimiento del parachoques, el controlador puede calcular el valor X basándose en valores separados de cada uno de los sensores. El valor X puede basarse en la señal del sensor lineal, y el controlador puede determinar si el parachoques está dentro de un rango de compresión entre una posición no comprimida y una posición parcialmente comprimida basándose en el valor X. Cuando el controlador determina el valor X basándose en dos o más señales que varían linealmente con una cantidad de fuerza entre el robot y la superficie de pared, el valor X es adicional o alternativamente indicativo de un ángulo con el que el robot se acerca a la superficie. El ángulo puede basarse en dos o más señales de sensor que son indicativas del valor X. El controlador puede controlar el ángulo con el que el robot se acerca a la superficie de pared basándose en el valor X. En algunas implementaciones, el controlador puede controlar una cantidad de fuerza con la que el robot se acerca a la superficie de pared.
Si el valor X está por encima de un límite inferior LL y por debajo de un límite superior UL de un rango de compresión, en la operación 820, el controlador proporciona una señal de control para seguir la superficie de pared proporcionando una señal de accionamiento para hacer que el robot continúe en el sentido de avance. La señal de control puede ser igual que la señal de control proporcionada en la operación 805. En algunos casos, la señal de control puede ajustar un accionamiento del robot para mantener el valor X dentro de un valor óptimo. En algunos casos, el valor X puede basarse en la señal desde el sensor y puede indicar que el parachoques está dentro del rango de compresión entre la posición no comprimida y la posición comprimida. Si el valor X es la extensión de parachoques normalizada promedio, el límite inferior LL del rango de compresión puede ser, por ejemplo, del 7,5% al 7%, 7% al 6%, 6% al 5%, 5% al 4%, 4% al 3%, 34% al 2%, 2% al 1%, 1% al 0%, menor del 0%. El límite superior del rango de compresión puede ser, por ejemplo, del 7% al 8%, 7,5% al 8%, 8% al 9%, 9% al 10%, 10% al 11%, 11 % al 12%, 12 al 13%, 13% al 14%, 14% al 15%, 15% al 16%, 16% al 17%, 17% al 18%, 18% al 19%, 19% al 20%. El valor óptimo puede ser el promedio del límite inferior LL y el límite superior UL. En algunas implementaciones, el límite inferior LL puede estar entre aproximadamente el 0% y el 7,5% o menos, y el límite superior puede estar entre aproximadamente el 7,5% y el 15% o más. Mantener la extensión de parachoques promedio dentro de este intervalo predeterminado o rango de compresión puede resultar beneficioso para mantener la movilidad del robot facilitando al mismo tiempo la limpieza de las esquinas y hendiduras definidas por la primera superficie de pared. La señal de control puede hacer que el robot siga la superficie de pared que siguió el robot en la operación 805 manteniendo el valor X dentro del intervalo predeterminado o rango de compresión. El controlador puede estar programado para controlar el movimiento del cuerpo de robot para rastrear la superficie de pared para mantener el valor X dentro del rango de compresión.
Si el valor X está por debajo del límite inferior LL o por encima del límite superior UL del rango de compresión, en la operación 825, el controlador proporciona una señal de control para volver a centrarse en la superficie de pared. El controlador puede estar programado para controlar el movimiento del cuerpo de robot para hacer que el cuerpo de robot se retire de la superficie de pared en respuesta a que el valor esté fuera del rango de compresión. En algunas implementaciones, el controlador puede recibir una señal de un sensor que detecta una velocidad de las ruedas. El sensor pueden ser, por ejemplo, codificadores o sensores de corriente que pueden funcionar con una rueda. Basándose en, por ejemplo, la velocidad de las ruedas y los sensores de parachoques, el controlador puede controlar el robot para que se retire de la superficie de pared, se aleje de la superficie de pared y a continuación vuelva a acercarse a la superficie de pared. En los casos en los que el valor X está por encima del límite superior UL, el controlador puede implementar el comportamiento de nuevo acercamiento como se describió con respecto a las figuras 5B a 5E anteriormente. Por ejemplo, el controlador puede proporcionar una señal de control para hacer que el robot detenga el movimiento hacia delante momentáneamente y a continuación se retire de la superficie de pared. La señal de control también puede hacer que el robot se aleje de la superficie de pared, y a continuación vuelva a acercarse a la superficie de pared. En los casos en los que el valor X está por debajo del límite inferior LL, lo que puede indicar una pérdida del contacto entre el parachoques y la superficie de pared, el controlador puede implementar el comportamiento de nuevo acercamiento como se describió con respecto a las figuras 6B a 6D anteriormente. El controlador puede proporcionar una señal de control para hacer que el robot detenga el movimiento hacia delante momentáneamente y, en algunas implementaciones, hacer que el robot se retire hacia la superficie de pared. Entonces la señal de control puede hacer que el robot gire hacia la superficie de pared y a continuación vuelva a acercarse a la superficie de pared.
Aunque los imanes 170L y 170R y los sensores 176L y 176R se han descrito colocados de modo que la compresión del parachoques 110 dé como resultado un aumento en la tensión generada por los sensores 176L y 176R, en otras implementaciones, los imanes y los sensores pueden estar colocados de modo que los imanes estén más alejados de los sensores a medida que se comprime el parachoques. En tales implementaciones, los sensores generan una tensión menor tras la compresión del parachoques.
Aunque los comportamientos de navegación descritos anteriormente se han explicado con respecto al robot 100 ejecutando una limpieza en mojado, en algunos casos, el robot 100 puede ejecutar una limpieza en seco y puede no incorporar todos los comportamientos de navegación descritos anteriormente, o puede incorporar comportamientos adicionales, en una operación de limpieza. Por ejemplo, el robot 100 puede ejecutar el patrón de hilera de maíz sin el patrón tipo enredadera.
En algunos ejemplos, el robot conoce la ubicación de una superficie que ha recorrido previamente almacenando estas ubicaciones en un mapa almacenado en la memoria no transitoria 460 del robot o en un medio de almacenamiento externo accesible por el robot a través de medios por cable o inalámbricos durante un proceso de limpieza. En algunas implementaciones, el robot incluye una cámara que apunta hacia arriba y/o uno o varios medidores láser para construir un mapa de un espacio de este tipo. En algunos ejemplos, el controlador 405 utiliza un mapa de paredes, muebles, cambios en el suelo y otros obstáculos para posicionar y colocar el robot en ubicaciones lo suficientemente lejos de obstáculos y/o cambios en el suelo antes de la aplicación del fluido de limpieza.
Aunque se ha descrito un parachoques para detectar la cantidad de fuerza en el robot, en algunas implementaciones, puede utilizarse un sensor de fuerza, un sensor de presión, o algún otro sensor dispuesto en el robot para detectar la fuerza. Las técnicas de seguimiento de pared de ejemplo descritas en el presente documento pueden controlarse o implementarse, al menos en parte, utilizando uno o varios productos de programa informático, por ejemplo, uno o varios programas informáticos implementados de manera tangible en uno o varios soportes de información, tales como uno o varios medios de almacenamiento legibles por máquina no transitorios, para su ejecución por, o para controlar el funcionamiento de, uno o varios aparatos de procesamiento de datos, por ejemplo, un procesador programable, un ordenador, múltiples ordenadores, y/o componentes de lógica programable.
Aunque en algunos ejemplos descritos anteriormente, se utiliza el comportamiento de seguimiento de pared para limpiar un perímetro de una habitación u otro espacio tras completar un comportamiento de limpieza de área, en otros ejemplos, puede utilizarse el comportamiento de seguimiento de pared para permitir que el robot escape de un entorno desordenado o de un área delimitada. Por ejemplo, si el robot entra en un espacio con una abertura estrecha para la entrada/salida, el robot puede atascarse en el espacio y puede ser que los patrones de cobertura normales no se ajusten a la entrada/salida para permitir que el robot escape. En tales situaciones, el robot puede determinar que está en un entorno desordenado y ejecutar un comportamiento de seguimiento de pared para escapar del área. El seguimiento de la pared permite que el robot identifique una salida estrecha que de otro modo el robot tendría dificultad en localizarla. En un ejemplo particular, un robot puede ejecutar un patrón de limpieza transversal aleatorio y tras identificar que el robot ha recorrido repetidamente la misma área (por ejemplo, está atrapado en un espacio pequeño o área desordenada) el robot puede ejecutar un comportamiento de seguimiento de pared para salir o escapar del área.
Un programa informático puede estar escrito en cualquier forma de lenguaje de programación, incluyendo lenguajes compilados o interpretados, y puede implementarse de cualquier forma, incluyendo como programa autónomo o como módulo, componente, subrutina, u otra unidad adecuada para su uso en un entorno informático.
Las operaciones asociadas con la implementación de todas o parte de las técnicas de seguimiento de pared descritas en el presente documento pueden realizarse mediante uno o varios procesadores programables que ejecutan uno o varios programas informáticos para realizar las funciones descritas en el presente documento. El control sobre todas o parte de las técnicas de seguimiento de pared descritas en el presente documento puede implementarse utilizando una circuitería lógica de propósito especial, por ejemplo, una FPGA (disposición de puertas programable en campo) y/o un ASIC (circuito integrado de aplicación específica).
Los procesadores adecuados para la ejecución de un programa informático incluyen, a modo de ejemplo, microprocesadores de propósito general y especial, y cualquiera o varios procesadores de cualquier tipo de ordenador digital. En general, un procesador recibirá instrucciones y datos desde un área de almacenamiento de sólo lectura o un área de almacenamiento de acceso aleatorio o ambas. Los elementos de un ordenador incluyen uno o varios procesadores para ejecutar instrucciones y uno o varios dispositivos de área de almacenamiento para almacenar instrucciones y datos. En general, un ordenador también incluirá, o estará acoplado de manera operativa para recibir datos desde, o transferir datos a, o ambos uno o varios medios de almacenamiento legibles por máquina, tales como PCB en masa para almacenar datos, por ejemplo, discos magnéticos, magnetoópticos o discos ópticos. Los medios de almacenamiento legibles por máquina adecuados para implementar instrucciones y datos de programa informático incluyen todas las formas de área de almacenamiento no volátil, que incluyen a modo de ejemplo, dispositivos de área de almacenamiento semiconductores, por ejemplo, EPROM, EEPROM y dispositivos de área de almacenamiento de tipo flash; discos magnéticos, por ejemplo, discos duros internos o discos extraíbles; discos magnetoópticos; y discos CD-ROM y DVD-ROM.

Claims (14)

REIVINDICACIONES
1. Un método para controlar un robot de limpieza que tiene un paño de limpieza (120), que comprende: ejecutar un comportamiento de seguimiento de pared manteniendo un contacto continuo entre una superficie de pared (20) y el paño de limpieza del robot mientras se mantiene un ángulo pequeño entre el robot y la superficie de pared,
caracterizado por:
utilizar un sensor (112) del robot para permitir un contacto continuo entre el paño de limpieza del robot y la superficie de pared, mientras el robot rastrea la superficie de pared.
2. El método de la reivindicación 1, donde el ángulo pequeño está entre 1 grado y 20 grados.
3. El método de la reivindicación 2, donde el ángulo está entre 3 grados y 20 grados, de manera opcional entre 5 grados y 10 grados.
4. El método de una de las reivindicaciones anteriores, donde el robot de limpieza comprende un cuerpo (102) que se puede mover con relación a una superficie; y
un parachoques (110) montado en el cuerpo para permitir el movimiento del parachoques con relación al cuerpo, donde el paño de limpieza está fijado a una parte inferior del cuerpo y se extiende pasada una anchura del parachoques.
5. El método de la reivindicación 4, donde el parachoques se puede trasladar y rotar con relación al cuerpo del robot.
6. El método de la reivindicación 4 o la reivindicación 5, donde el parachoques se puede mover entre una posición no comprimida con relación al cuerpo y una posición comprimida con relación al cuerpo,
donde rastrear la superficie de pared incluye determinar que el parachoques está en una posición parcialmente comprimida que tiene un rango de compresión entre la posición no comprimida y la posición comprimida.
7. El método de la reivindicación 6, que comprende:
ajustar de manera continua las velocidades de rotación y traslación del robot para mantener una compresión casi constante del parachoques.
8. El método de la reivindicación 1, donde el sensor comprende un sensor capacitivo, un sensor inductivo o un sensor de efecto Hall.
9. El método de la reivindicación 1 o la reivindicación 8, donde el sensor está ubicado en un lado derecho o lado izquierdo del robot.
10. El método de una cualquiera de las reivindicaciones anteriores, que comprende entrar en contacto con la superficie de pared con una fuerza relativamente constante aplicada sobre el robot.
11. El método de una de las reivindicaciones anteriores, que comprende además ajustar las velocidades de rotación y traslación del robot para mantener un contacto continuo con la superficie de pared (20).
12. El método de una de las reivindicaciones anteriores, donde el comportamiento de seguimiento de pared incluye seguir un perímetro de una habitación u otro espacio.
13. El método de la reivindicación 12, que comprende además:
seguir un patrón de cobertura de área para cubrir la habitación u otro espacio, donde, de manera opcional, la ejecución del comportamiento de seguimiento de pared se produce después del seguimiento del patrón de cobertura.
14. Un robot de limpieza que comprende:
un paño de limpieza (120); y
un controlador configurado para llevar a cabo los pasos de uno cualquiera de los métodos de las reivindicaciones 1 a 13.
ES18192868T 2015-04-09 2015-11-20 Robot que sigue la pared Active ES2793599T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/682,760 US9918605B2 (en) 2015-04-09 2015-04-09 Wall following robot

Publications (1)

Publication Number Publication Date
ES2793599T3 true ES2793599T3 (es) 2020-11-16

Family

ID=54695571

Family Applications (2)

Application Number Title Priority Date Filing Date
ES18192868T Active ES2793599T3 (es) 2015-04-09 2015-11-20 Robot que sigue la pared
ES15195627T Active ES2702202T3 (es) 2015-04-09 2015-11-20 Robot que sigue la pared

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES15195627T Active ES2702202T3 (es) 2015-04-09 2015-11-20 Robot que sigue la pared

Country Status (7)

Country Link
US (4) US9918605B2 (es)
EP (3) EP3711648B1 (es)
JP (2) JP6710521B2 (es)
KR (1) KR102403044B1 (es)
CN (3) CN205080431U (es)
ES (2) ES2793599T3 (es)
WO (1) WO2016164072A1 (es)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9907449B2 (en) 2015-03-16 2018-03-06 Irobot Corporation Autonomous floor cleaning with a removable pad
US9265396B1 (en) 2015-03-16 2016-02-23 Irobot Corporation Autonomous floor cleaning with removable pad
US9918605B2 (en) 2015-04-09 2018-03-20 Irobot Corporation Wall following robot
US9505140B1 (en) * 2015-06-02 2016-11-29 Irobot Corporation Contact sensors for a mobile robot
TWI617907B (zh) * 2015-07-30 2018-03-11 Yan cheng xiang Robot for automatically adjusting moving path and method thereof
JP6724349B2 (ja) * 2015-11-30 2020-07-15 カシオ計算機株式会社 自律移動装置、自律移動方法及びプログラム
US10444757B2 (en) 2016-02-03 2019-10-15 Positec Power Tools (Suzhou) Co., Ltd. Self-moving device and control method therefor
US10496063B1 (en) 2016-03-03 2019-12-03 AI Incorporated Method for devising a schedule based on user input
KR101979760B1 (ko) 2016-07-14 2019-05-17 엘지전자 주식회사 이동로봇
JP6683056B2 (ja) * 2016-07-29 2020-04-15 工機ホールディングス株式会社 自走式作業機
JP7063534B2 (ja) * 2016-10-13 2022-05-09 日立グローバルライフソリューションズ株式会社 自走式電気掃除機
US10375880B2 (en) 2016-12-30 2019-08-13 Irobot Corporation Robot lawn mower bumper system
CN106647774A (zh) * 2017-02-14 2017-05-10 南京罗普森智能科技有限公司 实现室内扫地机器人自主探索建图及自主路径覆盖的方法
CN107007219A (zh) * 2017-06-15 2017-08-04 深圳市佳都实业发展有限公司 一种拖地机器人
KR102085338B1 (ko) * 2017-07-14 2020-03-05 에브리봇 주식회사 로봇 청소기 및 그의 주행 제어 방법
US20190033869A1 (en) * 2017-07-25 2019-01-31 Neato Robotics, Inc. Robot with rotational/translation movement
KR102206201B1 (ko) * 2017-08-02 2021-01-22 삼성전자주식회사 청소 로봇 및 그 제어방법
US10612929B2 (en) * 2017-10-17 2020-04-07 AI Incorporated Discovering and plotting the boundary of an enclosure
CN107536565A (zh) * 2017-10-24 2018-01-05 湖南格兰博智能科技有限责任公司 自移动清洁机器人及其控制方法
KR102188797B1 (ko) * 2018-04-02 2020-12-08 에브리봇 주식회사 로봇 청소기 및 그 제어 방법
KR102070282B1 (ko) * 2018-04-30 2020-01-28 엘지전자 주식회사 청소기 및 그 제어방법
KR102122237B1 (ko) 2018-04-30 2020-06-15 엘지전자 주식회사 청소기 및 그 제어방법
US20190384314A1 (en) 2018-06-15 2019-12-19 Mobile Industrial Robots A/S Detecting objects near an autonomous device
USD929478S1 (en) 2018-06-15 2021-08-31 Mobile Industrial Robots A/S Mobile robot having an illuminated region
USD907677S1 (en) 2018-06-15 2021-01-12 Mobile Industrial Robots A/S Mobile robot
US11465293B2 (en) 2018-07-31 2022-10-11 Bissell Inc. Autonomous floor cleaner
US11464375B2 (en) * 2018-09-04 2022-10-11 Irobot Corporation Navigation of autonomous mobile robots
US10824159B2 (en) * 2018-09-07 2020-11-03 Irobot Corporation Autonomous floor-cleaning robot having obstacle detection force sensors thereon and related methods
CA3111560A1 (en) * 2018-09-11 2020-03-19 Becton, Dickinson And Company Robotic sample preparation system for diagnostic testing with automated position learning
EP3623894B1 (en) 2018-09-13 2022-11-23 Mobile Industrial Robots A/S Agv having dynamic safety zone
USD921312S1 (en) * 2018-09-13 2021-06-01 Irobot Corporation Cleaning pad mounting card for an autonomous floor cleaning robot
US10809734B2 (en) 2019-03-13 2020-10-20 Mobile Industrial Robots A/S Route planning in an autonomous device
CN110279348B (zh) * 2019-06-18 2024-05-24 深圳瑞科时尚电子有限公司 一种自移动设备
KR102306394B1 (ko) * 2019-08-23 2021-09-30 엘지전자 주식회사 인공지능 로봇 청소기
CN111026162B (zh) * 2019-12-10 2023-04-11 长沙中联重科环境产业有限公司 自跟随清洁机器人
SE545284C2 (en) * 2019-12-12 2023-06-20 Husqvarna Ab Exit path determination for a robotic work tool
CN111006652B (zh) * 2019-12-20 2023-08-01 深圳市飞瑶电机科技有限公司 一种机器人靠边运行的方法
US11592299B2 (en) 2020-03-19 2023-02-28 Mobile Industrial Robots A/S Using static scores to control vehicle operations
US11835949B2 (en) 2020-11-24 2023-12-05 Mobile Industrial Robots A/S Autonomous device safety system
GB2605751B (en) * 2021-01-22 2023-06-28 Dyson Technology Ltd Autonomous surface treatment apparatus
CN114137969B (zh) * 2021-11-24 2023-11-24 珠海格力电器股份有限公司 作业机器人的控制方法、装置、电子设备和存储介质
WO2023112690A1 (ja) * 2021-12-13 2023-06-22 ソニーグループ株式会社 移動ロボット、制御方法、プログラム、およびスイッチモジュール
CN117916492A (zh) * 2022-03-15 2024-04-19 腾狮国际私人有限公司 保险杠系统和具有保险杠的装置
DE102022209066A1 (de) * 2022-08-31 2024-02-29 BSH Hausgeräte GmbH Verfahren zum Betrieb eines mobilen, selbstfahrenden Geräts

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4292659A (en) 1978-10-02 1981-09-29 The Bendix Corporation Pressure sensing capacitive transducer
US4897914A (en) 1984-09-20 1990-02-06 Loubier Robert J Method of making a magnetic-encoding device having hall effect devices
EP0522200B1 (en) * 1991-07-10 1998-05-13 Samsung Electronics Co., Ltd. Mobile monitoring device
US6491998B1 (en) 1995-12-20 2002-12-10 Pathol Limited Wet cleaning cloth
US5630243A (en) 1996-02-14 1997-05-20 Federico; Vera L. Toilet cleaning device with cleaning pad
US6142252A (en) * 1996-07-11 2000-11-07 Minolta Co., Ltd. Autonomous vehicle that runs while recognizing work area configuration, and method of selecting route
JPH10260727A (ja) * 1997-03-21 1998-09-29 Minolta Co Ltd 自動走行作業車
US6532404B2 (en) 1997-11-27 2003-03-11 Colens Andre Mobile robots and their control system
ES2172936T3 (es) 1997-11-27 2002-10-01 Solar & Robotics Mejoras en los robots moviles y en su sistema de mando.
ATE268196T1 (de) 1999-06-17 2004-06-15 Solar & Robotics S A Automatische vorrichtung zum sammeln von gegenständen
US8412377B2 (en) 2000-01-24 2013-04-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US6594844B2 (en) 2000-01-24 2003-07-22 Irobot Corporation Robot obstacle detection system
US7155308B2 (en) 2000-01-24 2006-12-26 Irobot Corporation Robot obstacle detection system
US6956348B2 (en) 2004-01-28 2005-10-18 Irobot Corporation Debris sensor for cleaning apparatus
US6883201B2 (en) 2002-01-03 2005-04-26 Irobot Corporation Autonomous floor-cleaning robot
US6690134B1 (en) 2001-01-24 2004-02-10 Irobot Corporation Method and system for robot localization and confinement
US7571511B2 (en) 2002-01-03 2009-08-11 Irobot Corporation Autonomous floor-cleaning robot
EP1408729B1 (fr) 2001-05-28 2016-10-26 Husqvarna AB Amelioration d'une tondeuse robotique
US8396592B2 (en) * 2001-06-12 2013-03-12 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
US7429843B2 (en) 2001-06-12 2008-09-30 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
WO2002101477A2 (en) 2001-06-12 2002-12-19 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
US8428778B2 (en) 2002-09-13 2013-04-23 Irobot Corporation Navigational control system for a robotic device
US7137169B2 (en) 2003-01-10 2006-11-21 Royal Appliance Mfg. Co. Vacuum cleaner with cleaning pad
KR100549042B1 (ko) * 2003-07-21 2006-02-02 주식회사 한울로보틱스 청소로봇의 청소동작 제어방법
US20050155631A1 (en) 2004-01-16 2005-07-21 Andrew Kilkenny Cleaning pad with functional properties
US20050229344A1 (en) 2004-01-16 2005-10-20 Lisa Mittelstaedt Foaming cleaning pad
US20060020369A1 (en) * 2004-03-11 2006-01-26 Taylor Charles E Robot vacuum cleaner
JP2006026028A (ja) * 2004-07-14 2006-02-02 Sanyo Electric Co Ltd 掃除機
US7891898B2 (en) 2005-01-28 2011-02-22 S.C. Johnson & Son, Inc. Cleaning pad for wet, damp or dry cleaning
US8931971B2 (en) 2005-01-28 2015-01-13 S.C. Johnson & Son, Inc. Cleaning pad impregnated with a volatile liquid for improved dust adhesion
US7620476B2 (en) 2005-02-18 2009-11-17 Irobot Corporation Autonomous surface cleaning robot for dry cleaning
US7389156B2 (en) 2005-02-18 2008-06-17 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
EP1850725B1 (en) 2005-02-18 2010-05-19 iRobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
US20060184293A1 (en) 2005-02-18 2006-08-17 Stephanos Konandreas Autonomous surface cleaning robot for wet cleaning
US8392021B2 (en) 2005-02-18 2013-03-05 Irobot Corporation Autonomous surface cleaning robot for wet cleaning
DE602006010866D1 (de) * 2006-07-27 2010-01-14 Aisin Aw Co Navigationsgerät und -Verfahren
US7829628B2 (en) * 2006-11-03 2010-11-09 Polyone Corporation Colorant concentrates for thermoplastic biofiber composites
KR101281512B1 (ko) * 2007-04-06 2013-07-03 삼성전자주식회사 로봇청소기 및 그 제어방법
EP2781178B1 (en) * 2007-05-09 2021-04-21 iRobot Corporation Autonomous coverage robot
KR101361562B1 (ko) * 2007-05-31 2014-02-13 삼성전자주식회사 청소로봇
JP2009229453A (ja) * 2008-02-28 2009-10-08 Seiko Epson Corp 圧力検出装置及び圧力検出方法
US8961695B2 (en) 2008-04-24 2015-02-24 Irobot Corporation Mobile robot for cleaning
WO2009132317A1 (en) * 2008-04-24 2009-10-29 Evolution Robotics Application of localization, positioning & navigation systems for robotic enabled mobile products
US8504241B2 (en) * 2010-03-22 2013-08-06 The Raymond Corporation Self-centering, torque-sensing joint assembly for a pallet truck power steering system
CN201645498U (zh) * 2010-04-14 2010-11-24 泰怡凯电器(苏州)有限公司 自移动装置
DE102010015062B4 (de) * 2010-04-15 2018-10-25 Siemens Healthcare Gmbh Vorrichtung zur Lagerung und zum Antrieb eines kippbaren Teils einer Gantry eines Computertomographiegerätes und Computertomographiegerät
US20120065829A1 (en) * 2010-09-15 2012-03-15 Jyh-Cheng Yu Wall-following Moving Device
GB2492168A (en) 2011-06-24 2012-12-26 Penny & Giles Controls Ltd Inductive position sensor with datum adjustment
CN107024933B (zh) * 2012-03-15 2021-07-06 艾罗伯特公司 包括传感器阵列的用于机器人的缓冲器
US8855914B1 (en) * 2012-08-31 2014-10-07 Neato Robotics, Inc. Method and apparatus for traversing corners of a floored area with a robotic surface treatment apparatus
KR102015311B1 (ko) * 2012-11-30 2019-08-28 삼성전자주식회사 청소 로봇 및 그 제어 방법
US9483055B2 (en) * 2012-12-28 2016-11-01 Irobot Corporation Autonomous coverage robot
KR20150020346A (ko) * 2013-08-12 2015-02-26 삼성전자주식회사 적외선 센서 모듈 및 이를 이용한 로봇 청소기
US9615712B2 (en) 2013-11-12 2017-04-11 Irobot Corporation Mobile floor cleaning robot
EP3082543B1 (en) 2013-12-18 2019-01-09 iRobot Corporation Autonomous mobile robot
CN104007765B (zh) * 2014-06-16 2016-05-04 成都北斗群星智能科技有限公司 扫地机器人避障、定位方法
US20160224325A1 (en) 2015-01-29 2016-08-04 Mentor Graphics Corporation Hiding compilation latency
US9630319B2 (en) * 2015-03-18 2017-04-25 Irobot Corporation Localization and mapping using physical features
US9918605B2 (en) 2015-04-09 2018-03-20 Irobot Corporation Wall following robot
CN107248074A (zh) 2017-03-29 2017-10-13 阿里巴巴集团控股有限公司 一种基于区块链的业务处理方法及设备
CN107392619B (zh) 2017-07-31 2020-12-29 众安信息技术服务有限公司 智能合约处理方法及装置
CN107657463A (zh) 2017-09-29 2018-02-02 北京京东尚科信息技术有限公司 物品溯源平台和方法及装置
CN107844294B (zh) 2017-11-17 2020-05-19 杭州溪塔科技有限公司 一种高可用的合约执行方法及系统
CN108833460B (zh) 2018-04-10 2021-05-25 平安科技(深圳)有限公司 基于区块链的音乐发布方法、装置及终端设备
CN108876610A (zh) 2018-05-31 2018-11-23 深圳市零度智控科技有限公司 智能合约实施方法、用户设备、存储介质及装置

Also Published As

Publication number Publication date
CN205080431U (zh) 2016-03-09
EP3711648B1 (en) 2023-08-30
KR20160121372A (ko) 2016-10-19
CN106200632B (zh) 2020-10-30
WO2016164072A1 (en) 2016-10-13
EP3459411A1 (en) 2019-03-27
US20160296092A1 (en) 2016-10-13
US20160299503A1 (en) 2016-10-13
JP6710521B2 (ja) 2020-06-17
CN112445228A (zh) 2021-03-05
KR102403044B1 (ko) 2022-05-26
US20200146525A1 (en) 2020-05-14
US9918605B2 (en) 2018-03-20
CN106200632A (zh) 2016-12-07
EP3459411B1 (en) 2020-02-26
EP3078315A1 (en) 2016-10-12
EP3711648A1 (en) 2020-09-23
US9877630B2 (en) 2018-01-30
JP2020140728A (ja) 2020-09-03
JP7071004B2 (ja) 2022-05-18
US10537221B2 (en) 2020-01-21
ES2702202T3 (es) 2019-02-27
US20180228333A1 (en) 2018-08-16
EP3078315B1 (en) 2018-09-26
US11278175B2 (en) 2022-03-22
JP2016201096A (ja) 2016-12-01

Similar Documents

Publication Publication Date Title
ES2793599T3 (es) Robot que sigue la pared
ES2712906T3 (es) Robot autónomo de limpieza de superficies
ES2660836T3 (es) Método y sistema de cobertura multicódigo para un robot autónomo
US10499783B2 (en) Autonomous floor cleaning with a removable pad
US9565984B2 (en) Autonomous floor cleaning with removable pad
US10766132B2 (en) Mobile robot for cleaning
US8463438B2 (en) Method and system for multi-mode coverage for an autonomous robot