US Pat. No. 9,516,806

ROBOTIC LAWN MOWING BOUNDARY DETERMINATION

iRobot Corporation, Bedf...

1. A method of mowing an area with an autonomous mowing robot, the method comprising:
storing, in non-transient memory of the robot, a set of geospatially referenced perimeter data corresponding to positions
of the mowing robot as the mowing robot is guided about a perimeter of an area to be mowed;

comparing, via a controller communicably coupled to the non-transient memory of the robot, at least two adjacent data points
from the set of geospatially referenced perimeter data to determine which point corresponds to a position that is adjacent
both mowable and unmowable portions and that is directly adjacent other points separating mowable and unmowable portions;

removing, via the controller, one or more of the at least two adjacent data points from the set of perimeter data, thereby
creating a redacted data set; and

controlling the mowing robot to autonomously mow an area bounded by a boundary corresponding to the redacted data set, including
altering direction of the mowing robot at or near a position corresponding to data in the redacted data set so as to redirect
the robot back into the bounded area.

US Pat. No. 9,174,342

SOCIAL BEHAVIOR RULES FOR A MEDICAL TELEPRESENCE ROBOT

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot comprising:
a drive system configured to move the telepresence robot;
a control system configured to control the drive system to drive the telepresence robot around a work area;
a status determination system configured to determine a current status for one or both of the telepresence robot and a human;
and

a social path component configured to provide instructions to the control system to cause the telepresence robot to maintain
a socially acceptable distance from humans, the socially acceptable distance based on the current status,

wherein the status determination system is configured to determine that the current status of the robot comprises a presence
of the human,

wherein the social path component maintains a socially acceptable distance from the human by avoiding a lockout zone surrounding
the human,

wherein the status determination system comprises a human classification component configured to determine a classification
of a human, and

wherein the social path component determines the lockout zone based on the classification of the human.

US Pat. No. 9,043,953

LAWN CARE ROBOT

iRobot Corporation, Bedf...

1. A robot lawnmower comprising:
a body;
a drive system carried by the body and configured to maneuver the robot across a lawn;
a controller carried by the body and in communication with the drive system;
a grass cutter carried by the body;
at least one obstacle sensor carried by the body and in communication with the controller, the at least one obstacle sensor
configured to detect surface phenomenon that may be treated as an obstacle;

a detachable manual handle configured to be attached to the body; and
a handle connector carried by the body, the handle connector configured to detect if the manual handle is extended relative
to the body;

wherein the controller is configured to operate the drive system in an autonomous mode when the handle connector detects that
the manual handle is not extended relative to the body connector and to redirect the robot in response to the obstacle sensor
detecting an obstacle, and

wherein the controller is configured to operate the drive system in a manual mode when the handle connector detects that the
manual handle is extended relative to the body.

US Pat. No. 9,114,540

COMPLIANT UNDERACTUATED GRASPER

iRobot Corporation, Bedf...

1. A grasper comprising:
a base;
a first finger having a proximal end connected to the base by a first proximal joint;
a first tendon cable configured to move the first finger relative to the base;
a second finger having a proximal end connected to the base by a second proximal joint;
a second tendon cable configured to move the second finger relative to the base; and
a magnetic breakaway mechanism releasably coupling the first finger to the base to permit the first finger to decouple from
the base and thereafter recouple with the base independently of the second finger;

wherein the first tendon cable extends through the magnetic breakaway mechanism and to the first finger.

US Pat. No. 9,168,656

INTERFACING WITH A MOBILE TELEPRESENCE ROBOT

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot system local terminal comprising:
an electronic display;
a processor in communication with the electronic display;
a memory in communication with the processor, the memory comprising instructions executable by the processor configured to
cause the processor to:

retrieve at least a portion of a plan view map representative of a facility;
receive a video feed from an imaging system of a remote telepresence robot at a first perspective;
receive positioning data associated with a current position of the remote telepresence robot relative to the plan view map;
display the video feed from the imaging system of the remote telepresence robot and the plan view map; and
transmit a command to the remote telepresence robot specifying a movement for the remote telepresence robot; and
a user input device in communication with the processor, the user input device configured to enable a user to select a movement
for the remote telepresence robot via any of at least two options on a single user interface, the at least two options comprising:

selecting a destination of the remote telepresence robot with respect to the video feed; and
selecting a destination of the remote telepresence robot with respect to the plan view map;
wherein the selection of the movement comprises selecting a point on the plan view map, and wherein selecting a point on the
plan view map results in an alternative perspective of the video feed.

US Pat. No. 9,045,049

SYSTEM AND METHOD FOR IN SITU CHARGING OF A REMOTE VEHICLE

iRobot Corporation, Bedf...

1. A system for in situ charging of at least one rechargeable power source of a remote vehicle, the system comprising:
a power recharger having charger contacts; and
a chassis adapter at least partially enclosing the at least one rechargeable power source and retaining the at least one rechargeable
power source on the remote vehicle, the chassis adapter comprising charger input contacts configured to mate with the charger
contacts of the power recharger, the charger input contacts including a positive contact, a ground, and one or more data contacts
separate from the positive contact, the chassis adapter including terminals in communication with at least the positive contact
and the ground and configured to mate with the at least one rechargeable power source for charging the at least one rechargeable
power source;

wherein when the power recharger engages and supplies power to the chassis adapter, the chassis adapter:
directly powers the remote vehicle while charging the at least one rechargeable power source, allowing the at least one rechargeable
power source to not supply power to the remote vehicle while charging; and

monitors a charging current to the at least one rechargeable power source; and
wherein the power recharger automatically disengages from the charger input contacts when the remote vehicle is driven away
from the chassis adapter without damaging the power recharger.

US Pat. No. 9,079,311

INTERFACING WITH A MOBILE TELEPRESENCE ROBOT

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot system local terminal comprising:
an electronic display;
a processor in communication with the electronic display;
a memory in communication with the processor, the memory comprising instructions executable by the processor configured to
cause the processor to:

retrieve at least a portion of a plan view map representative of a facility;
receive a video feed from an imaging system of a remote telepresence robot at a first perspective;
receive positioning data associated with a current position of the remote telepresence robot relative to the plan view map;
display the video feed from the imaging system of the remote telepresence robot and the plan view map; and
transmit a command to the remote telepresence robot specifying a movement for the remote telepresence robot; and
a user input device in communication with the processor, the user input device configured to enable a user to select a movement
for the remote telepresence robot via any of at least three options on a single user interface, the at least three options
comprising:

selecting a destination of the remote telepresence robot with respect to the video feed;
selecting a destination of the remote telepresence robot with respect to the plan view map; and
selecting a destination of the remote telepresence robot by incrementally advancing the remote telepresence robot in a direction
relative to the current position of the remote telepresence robot.

US Pat. No. 9,323,250

TIME-DEPENDENT NAVIGATION OF TELEPRESENCE ROBOTS

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot, comprising: a drive system configured to move the telepresence robot according to drive instructions;
a control system in communication with the drive system, the control system configured to generate drive instructions to cause
the drive system to move the telepresence robot along a navigation path;

a mapping module in communication with the control system, the mapping module configured to access a map data source, the
map data source including:

a map representative of a robot operating surface; and
a plurality of time-dependent navigation tags, each time-dependent navigation tag being a data structure comprising,
spatial coordinates locatable relative to the map and associated with the robot operating surface, and
tag information comprising a time-dependent robot action modifier;
a positioning system in communication with the control system configured to provide positioning information associated with
a current position;

a tag identification system configured to identify at least one time-dependent navigation tag that includes the time-dependent
robot action modifier associated with the navigation path of the telepresence robot; and

a navigation system configured to generate the navigation path, the navigation path comprising a sequence of coordinates from
a current position of the telepresence robot on the map to a desired position on the map,

wherein the navigation system is configured to be triggered by an identified time-dependent navigation tag and the associated
time-dependent robot action modifier to plan the navigation path based, at least in part, on the time-dependent robot action
modifier associated with the identified time-dependent navigation tag.

US Pat. No. 9,440,354

LOCALIZATION BY LEARNING OF WAVE-SIGNAL DISTRIBUTIONS

iRobot Corporation, Bedf...

1. A robot configured to determine its location and orientation in an environment in which a signal, external to the robot,
is present, the robot comprising:
a signal sensor configured to detect a property of the signal;
a movement system configured to move the robot from a first pose comprising a first location in the environment at a first
time to a second pose comprising a second location at a second time, the second location proximate to the first location;

a motion sensor configured to detect a change in location between the first pose and the second pose;
a local signal estimator configured to predict the value of the signal property at a plurality of poses, the plurality of
poses comprising poses with respective predefined locations proximate to the first pose; and

a localization component configured to estimate the robot's second pose based at least in part on a value of the signal property
as detected by the signal sensor at the second pose, the change in pose between the first pose and the second pose as detected
by the motion sensor, and a predicted value of the signal property at the estimated second pose based at least in part on
one or more of the values predicted by the local signal estimator.

US Pat. No. 9,220,386

ROBOTIC VACUUM

iRobot Corporation, Bedf...

1. An autonomous mobile robot for cleaning a cleaning surface comprises:
a chassis having a drive system mounted therein in communication with a control system;
a cleaning head assembly having a lower cage and mounted to the chassis;
a debris collection bin mounted to the chassis;
a vacuum airway having a vacuum inlet and an airway outlet positioned adjacent the debris collection bin, and configured to
deliver debris from the cleaning head assembly to the debris collection bin, the vacuum airway extending between the cleaning
assembly and the debris collection bin and being in fluid communication with an impeller disposed within the debris collection
bin; and

a cleaning head module connected to the chassis and having a front roller including a front shape-changing resilient tube
and an adjacent rear roller including a rear shape-changing resilient tube rotatably opposing therewith beneath the vacuum
inlet,

wherein a surface of the front shape-changing tube and a surface rear shape-changing tube are separated by a narrowest air
gap of less than 1 cm, such that the vacuum draw directed from the vacuum airway is concentrated within the narrowest air
gap.

US Pat. No. 9,144,360

AUTONOMOUS COVERAGE ROBOT NAVIGATION SYSTEM

iRobot Corporation, Bedf...

1. An autonomous mobile robot system for bounded areas, the system comprising:
a navigation beacon with a gateway beacon emitter arranged to emit a gateway beam across a gateway between a first bounded
area and an adjacent second bounded area with the beacon placed in the gateway on a floor surface, wherein the navigation
beacon is configured to emit a marker indicating a proximity zone about the beacon that extends into the bounded areas, and
wherein the navigation beacon further comprises a beacon emitter arranged to transmit an emission into the first bounded area
indicating the direction of the beacon, with the beacon disposed within the gateway;

an autonomous coverage robot comprising:
a beacon emission sensor responsive to the gateway beam, the emission indicating the direction of the beacon, and the marker
indicating the proximity zone, and configured to detect an encoded signal included in at least one of the gateway beam and
the marker indicating the proximity zone, the encoded signal comprising a unique identifier associating the beacon with the
first bounded area;

a drive system configured to maneuver the robot about the first bounded area in:
a cleaning mode, in which the robot is redirected back into the first bounded area in response to detecting any one of the
marker indicating the proximity zone and the gateway beam, and

a migration mode, in which the robot is configured to maneuver toward the beacon upon encountering the emission indicating
the direction of the beacon and through the gateway into the second bounded area while avoiding collision with the beacon
by detection of the marker indicating the proximity zone; and

a base station located in one of the bounded areas, the base station comprising:
a base defining a docking direction from which the robot may properly dock; and
a robot charger housed in the base.

US Pat. No. 9,361,021

GRAPHICAL USER INTERFACES INCLUDING TOUCHPAD DRIVING INTERFACES FOR TELEMEDICINE DEVICES

IROBOT CORPORATION, Bedf...

1. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, are configured
to cause the processor to perform operations comprising:
communicatively connecting an electronic device to a remote presence device;
selectively displaying a video feed from the remote telepresence device in a video panel on an electronic display of the electronic
device;

selectively displaying patient telemetry data simultaneously with the live video feed;
receiving a navigation input;
adjusting navigation instructions associated with the navigation input based on a latency of the video feed and movement of
the remote telepresence device during the latency period; and

transmitting the adjusted navigation instructions to the remote telepresence device.

US Pat. No. 9,329,598

SIMULTANEOUS LOCALIZATION AND MAPPING FOR A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A method comprising:
maneuvering a robot about a scene;
emitting light onto the scene;
capturing images of the scene using a depth-perceptive imaging sensor, the images comprising an active illumination image
and an ambient illumination image, each image comprising three-dimensional depth data and brightness data;

executing a particle filter having a set of particles, each particle having an associated occupancy grid map, an associated
feature map, and a robot location hypothesis;

updating the occupancy grid map associated with each particle based on the images;
for each image:
instantiating an image pyramid comprising a set of scaled images, each scaled image having a scale relative to the image;
identifying at least one feature point in the scaled images; and
updating the corresponding feature map of each particle with the identified at least one feature point;
determining a location of an object in the scene based on the images and at least one particle of the particle filter;
assigning a confidence level for the location of the object based on the three-dimensional depth data and the brightness data
of the images; and

maneuvering the robot in the scene based on the location of the object and the corresponding confidence level.

US Pat. No. 9,233,471

DEBRIS MONITORING

iRobot Corporation, Bedf...

1. A debris monitoring system comprising:
a housing;
a receptacle defining an opening, the receptacle being releasably engageable with the housing to receive debris into the receptacle
through the opening;

a first emitter supported on the housing on one side of the opening and arranged to emit a signal across at least a portion
of the opening; and

a first receiver supported on the housing on an opposite side of the opening and arranged to receive the signal emitted by
the first emitter across the opening;

wherein the receptacle is movable with respect to the first emitter and the first receiver.

US Pat. No. 9,228,640

TRANSMISSION ASSEMBLIES

iRobot Corporation, Bedf...

5. A transmission assembly comprising:
a motor;
a shift actuator mechanism coupled to the motor;
a sun gear coupled to an output shaft of the motor;
a first magnet assembly coupled to the sun gear;
a ring gear assembly coupled to a shift coupler, the shift coupler being configured to engage via the shift actuator mechanism,
wherein the ring gear assembly is movable along an axial direction of the output shaft of the motor;

a second magnet assembly coupled to a housing face plate, the housing face plate being coupled to an output gear box; and
a planet carrier coupled to an output pinion in communication with the output gearbox, the planet carrier comprising at least
one planet gear,

wherein, in a first mode, the ring gear is in a first axial position and is locked to the first magnet assembly and configured
to rotate with the sun gear, the ring gear being configured to prevent the rotation of the at least one planet gear about
its own axis causing the planet carrier to rotate at the same speed as the sun gear, and

wherein, in a second mode, the ring gear is in a second axial position and is locked to the second magnet assembly allowing
the sun gear to engage the at least one planet gear, the sun gear being configured to rotate the at least one planet gear
about its own axis causing the planet carrier to rotate at a reduced speed from the sun gear.

US Pat. No. 9,215,957

AUTONOMOUS ROBOT AUTO-DOCKING AND ENERGY MANAGEMENT SYSTEMS AND METHODS

iRobot Corporation, Bedf...

1. An autonomous cleaning robot, comprising:
an undercarriage;
a wheel extending from the undercarriage toward a ground surface to support at least a portion of the mobile device above
the ground surface;

an energy storage unit supported by the undercarriage and configured to be charged while the robot is positioned at a base
station;

a navigational control system configured to direct the robot about a room, including mapping the room with respect to walls
and objects as points of reference, and to monitor an amount of room remaining to be cleaned;

wherein the robot is configured to control charging as a function of the amount of room remaining to be cleaned.

US Pat. No. 9,327,403

ADVANCED BEHAVIOR ENGINE

iRobot Corporation, Bedf...

1. A method of commanding a remote vehicle, the method comprising:
constructing a kinodynamic tree by adding nodes that represent a fixed difference in time from a current time, wherein each
node is added by assuming a command change is applied during a given time step and is integrated through a forward dynamics
model and a forward kinematic model of the remote vehicle;

executing a command on a controller of the remote vehicle based on a kinodynamic fixed depth motion planning algorithm to
use incremental feedback from evaluators to select a best feasible action, the best feasible action comprising actions within
a fixed time horizon of several seconds from the current time each time a feasible action is selected, wherein the kinodynamic
fixed depth motion planning algorithm comprises the kinodynamic tree, the kinodynamic tree having nodes that encode kinematic
and dynamic state variables of the resources of the remote vehicle;

determining, on the controller, resource commands corresponding to the best feasible action for commanding resources of the
remote vehicle; and

commanding, using the controller, the resources of the remote vehicle based on the resource commands.

US Pat. No. 9,233,472

MOBILE ROBOT PROVIDING ENVIRONMENTAL MAPPING FOR HOUSEHOLD ENVIRONMENTAL CONTROL

iRobot Corporation, Bedf...

1. A mobile robot, comprising:
a processor connected to a memory and a wireless network circuit, for executing routines stored in the memory and commands
generated by the routines and received via the wireless network circuit;

driven wheels commandable by the processor to reach a multiplicity of accessible two dimensional locations within a household;
and

an end effector, including at least one motorized actuator, commandable by the processor to perform mechanical work in the
household, the processor executing a plurality of routines including:

a first routine which monitors a wireless local network by communicating with the wireless network circuit, and detects a
presence state of one or more network entities on the wireless local network,

a second routine which receives a signal from a sensor, the sensor detecting an action state of one of the network entities,
the action state changeable between waiting and active, and

a third routine which commands the end effector to change state of performing mechanical work based on the presence state
and on the action state detected by the first and second routines;

wherein the mobile robot processor and wireless network circuit monitor a local wireless network of approximately 5-20 meters
maximum range for a change from presence to absence of a known network entity as a departure from the household, and once
determining the network entity has departed, waits for a time period to verify departure before initiating a cleaning mission
within the household.

US Pat. No. 9,144,361

DEBRIS SENSOR FOR CLEANING APPARATUS

iRobot Corporation, Bedf...

1. An autonomous cleaning apparatus comprising:
a chassis;
a drive system disposed on the chassis and configured to move of the cleaning apparatus over a cleaning surface;
a receptacle disposed on the chassis;
a cleaning head system disposed on the chassis and configured to move debris from the cleaning surface toward the receptacle;
a first and a second debris impact sensing element, each debris impact sensing element carried by the chassis and arranged
to detect the debris moved toward the dust bin wherein each of the first and second debris sensing elements is configured
to generate an electrical pulse in response to being struck with debris;

a controller in communication with the drive system and the first and second debris impact sensing elements, the controller
configured to steer the drive system immediately in a pattern of movement based at least in part on a signal received from
at least one of the first and second debris impact sensing elements.

US Pat. No. 9,392,920

ROBOT SYSTEM

iRobot Corporation, Bedf...

1. A method of communicating with a mobile robot using a network data bridge, the method comprising:
receiving a first communication on a broadband network interface connected to an internet protocol network, wherein the first
communication is transferred in compliance with an internet protocol;

extracting a serial command from the received first communication;
forming a second communication including the serial command in compliance with a command protocol distinct from the internet
protocol;

broadcasting the second communication to the mobile robot using a wireless command interface connected to a wireless command
protocol network;

using the wireless command interface, receiving from the mobile robot information corresponding to a theme, the mobile robot
comprising:

a detachable exterior body panel that corresponds to the theme and forms an exterior surface of the mobile robot, and
a theme identification unit configured to identify the theme to generate the information corresponding to the theme;
using the broadband network interface, sending the information corresponding to the theme to a server and receiving customizable
content from the server; and

sending, using the wireless command interface, the customizable content to the mobile robot.

US Pat. No. 9,282,867

AUTONOMOUS COVERAGE ROBOT

iRobot Corporation, Bedf...

1. A mobile surface cleaning robot comprising:
a robot body having a forward drive direction;
a drive system supporting the robot body above a floor surface for maneuvering the robot across the floor surface;
a robot controller in communication with the drive system;
a collection volume supported by the robot body;
a cleaning cartridge releasably supported by the robot body and arranged to clean the floor surface, the cleaning cartridge
comprising:

a first vacuum squeegee having a first duct;
a driven roller brush rotatably supported rearward of the first vacuum squeegee;
a second vacuum squeegee disposed rearward of the roller brush and having a second duct; and
a third duct in fluid communication with the first and second ducts, the third duct connectable to the collection volume at
a fluid-tight interface formed by selectively engaging the cartridge with the robot body;

a liquid applicator supported by the robot body rearward of the second vacuum squeegee;
a fluid accumulator supported by the robot body and in fluid communication with the liquid applicator; and
a smearing element suspended from the robot body by the fluid accumulator, the smearing element delivering fluid from the
fluid accumulator onto the floor surface, wherein the fluid accumulator extends along the length of the smearing element.

US Pat. No. 9,223,749

CELESTIAL NAVIGATION SYSTEM FOR AN AUTONOMOUS VEHICLE

iRobot Corporation, Bedf...

1. A method performed by a device remote from an autonomous vehicle, the method comprising:
receiving input from a user specifying a task for the autonomous vehicle, wherein the task involves having the autonomous
vehicle traverse an area;

sending one or more instructions to the autonomous vehicle to begin the task; and
displaying, on a display screen of the device, a status screen indicating how much of the task the autonomous vehicle has
completed, wherein displaying the status screen comprises coloring a floor plan of the area as the autonomous vehicle traverses
the area so that one or more colored portions of the floor plan illustrate where the autonomous vehicle has been and one or
more uncolored portions of the floor plan illustrate where the autonomous vehicle has not been.

US Pat. No. 9,429,944

VERSATILE ROBOTIC CONTROL MODULE

iRobot Corporation, Bedf...

1. A system comprising:
a vehicle comprising:
a vehicle body, and
a vehicle control system coupled to the vehicle body and configured to control a vehicle operational system; and
a robotic control system configured to control the vehicle control system and comprising:
a packet network, wherein the packet network is configured to extend into and between available idle spaces within interior
compartments of the vehicle body through which no moving part passes; and

a plurality of interchangeable robotic control modules, each robotic control module comprising:
a single housing configured to be mountable to fit into the available idle spaces, the single housing comprising:
a functional unit,
a processor module comprising a memory including executable program code,
an actuator controller, and
a packet network switch; and
one or more network connectors positioned on the exterior of the single housing and configured to connect to the packet network
and communicate with the packet network switch, wherein the robotic control modules are connected to the packet network,

wherein each interchangeable robotic control module of the plurality of interchangeable robotic control modules is configured
to select a particular modular role from among a plurality of possible modular roles and execute a portion of the executable
program code associated with the particular modular role.

US Pat. No. 9,427,127

AUTONOMOUS SURFACE CLEANING ROBOT

iRobot Corporation, Bedf...

1. A mobile robot comprising:
a robot body defining a forward drive direction;
a drive system supporting the robot body to maneuver the mobile robot across a floor surface;
a cleaning assembly disposed on the robot body, the cleaning assembly comprising:
a pad holder configured to receive a cleaning pad having a center and lateral edges; and
a fluid applicator configured to apply fluid to the floor surface; and
a controller in communication with the drive system and the cleaning assembly, the controller configured to control the drive
system and fluid applicator while executing a cleaning routine comprising:

applying fluid to a floor surface area at an initial volumetric flow rate, the floor surface area being in front of the cleaning
pad and in the forward drive direction of the mobile robot;

moving the mobile robot to the floor surface area in a movement pattern that moves the center and lateral edges of the cleaning
pad separately through the floor surface area to moisten an exterior surface of the cleaning pad with the fluid applied to
the floor surface area at the initial volumetric flow rate; and

applying the fluid to the floor surface area at a subsequent volumetric flow rate when the exterior surface of the cleaning
pad is moistened, the subsequent volumetric flow rate lower than the initial volumetric flow rate.

US Pat. No. 9,317,038

DETECTING ROBOT STASIS

iRobot Corporation, Bedf...

1. A coverage robot comprising:
a body;
a wheeled-drive that maneuvers the body over a surface according to drive commands from a controller in communication with
the drive;

a first stasis sensor carried on the body, and responsive to surface-relative movement of the body, the first stasis sensor
comprising:

a swivel caster assembly comprising a stasis indication wheel freely rotatable about a horizontal axis parallel to the surface
and freely rotatable about a second axis at an angle relative to the horizontal axis such that rotation about the second axis
causes the wheel to swivel on the surface; and

a non-contact wheel sensor defining an area of detection around the stasis indication wheel as the wheel freely rotates about
the horizontal axis and as the wheel swivels on the surface; and

a second stasis sensor carried separately on the body from the first stasis sensor, and responsive to surface-relative movement
of the body,

wherein the controller is configured to:
concurrently monitor sensory output from each of the first and second stasis sensors; and
determine whether the robot is in a substantially stuck condition or at least partially disengaged from the surface as a function
of the drive commands and sensory output from each of the first and second stasis sensors.

US Pat. No. 9,286,810

SYSTEMS AND METHODS FOR VSLAM OPTIMIZATION

iRobot Corporation, Bedf...

1. A method for localization and mapping in a system comprising a processor and a camera, wherein the processor is configured
to generate a graph with a plurality of pose nodes, a plurality of landmark nodes, and a plurality of edges, wherein:
(i) a pose node comprises a pose of a robot;
(ii) a landmark node comprises a pose of the robot, a landmark identifier corresponding to one or more objects, and an estimate
of the location of each of the one or more objects; and

(iii) at least one of the plurality of edges comprises a rigid transformation relating position and orientation of the robot
at two locations;

the method comprising:
updating the graph if the number of pose nodes in the graph exceeds a first threshold, comprising:
i) identifying a pose node directly linked to associated Markov blanket nodes with two or more incident edges;
ii) composing said incident edges to generate one or more new edges between pairs of said associated Markov blanket nodes;
and

iii) removing the identified pose node and said two or more incident edges;
removing at least one edge of said plurality of edges present in the graph if the total number of edges in the graph exceeds
a second threshold; and

updating an estimate of a location of the remaining pose nodes based at least in part on the plurality of edges present in
the graph.

US Pat. No. 9,218,003

ADAPTIVE MAPPING WITH SPATIAL SUMMARIES OF SENSOR DATA

iRobot Corporation, Bedf...

1. A mapping system configured to map parameters acquired by a robotic system in an environment, the mapping system comprising:
non-volatile memory configured to store computer-executable instructions; and
a hardware processor in communication with the non-volatile memory, the hardware processor configured to execute the computer-executable
instructions to at least:

measure a first set of parameters that characterize the environment;
estimate a first current pose of the robotic system at a first location in the environment;
define a first anchor node representing the estimate of the first current pose;
generate a first grid associated with the first anchor node, wherein the first grid comprises a map of the first set of measured
parameters, wherein the first set of measured parameters are mapped relative to the first pose;

determine an estimate of a second current pose of the robotic system at a second location in the environment;
determine an uncertainty between the estimate of the second current pose and the estimate of the first current pose; and
if the uncertainty is greater than a first threshold, then:
generate a second grid associated with a second anchor node, the second anchor node representing the estimate of the second
current pose of the robotic system, wherein the second grid comprises a map of a second set of measured parameters mapped
relative to the second current pose.

US Pat. No. 9,216,781

MANEUVERING ROBOTIC VEHICLES

iRobot Corporation, Bedf...

1. A robot capable of addressing various obstacles, comprising:
a chassis supporting a skid steered drive and having a leading end, a trailing end, and a chassis center of gravity (chassis
CG) therebetween;

a set of driven flippers, each flipper having a pivot end, a distal end, and a flipper center of gravity (flipper CG) therebetween,
each flipper being pivotable about a first pivot axis common with a drive axis near the leading end of the chassis;

a neck having a pivot end, a distal end, and a neck center of gravity (neck CG) therebetween, the neck pivotable about a second
pivot axis substantially at the leading end of the chassis; and

a sensor head at the distal end of the neck, the head having a pivot end, a distal end, and a head center of gravity (head
CG) therebetween, the head pivotable with respect to the neck about a third pivot axis at the distal end of the neck;

the chassis, flippers, neck and head:
(i) having a combined center of gravity (combined CG) disposed in a fore-aft sense between the distal and pivot ends of the
flippers when the flippers are in a stowed position with their distal ends between the leading and trailing ends of the chassis,
and

(ii) being movable between a first position and a second position to overcome an obstacle; and
a programmed controller configured, by a plurality of executable instructions stored on the controller, to direct the robot
to:

approach a plurality of stairs having a first pitch and a first step span;
raise the flippers to an angle of at least about 30 degrees;
mount a lowermost stair to a first position where the chassis is oriented at approximately the first pitch;
adjust flipper orientation to approximately match the first pitch; and
adjust the position of the overall gravitation center of the robot (robot CG) by moving the neck forward into a stair ascending
position in which the head CG is forward of the chassis CG; and

climb the stairs by driving the flippers and the skid steered drive and maintaining the flipper orientation to approximately
match the first pitch so that the robot spans at least two step edges.

US Pat. No. 9,427,875

CARPET DRIFT ESTIMATION USING DIFFERENTIAL SENSORS OR VISUAL MEASUREMENTS

iRobot Corporation, Bedf...

1. A robotic device comprising:
a camera;
an actuator system configured to move the robotic device across a surface, the actuator system comprising:
a plurality of left wheels interconnected by a left track, and
a plurality of right wheels interconnected by a right track; and
a controller coupled to the camera, wherein the controller is configured to:
extract features from two or more images captured by the camera;
match extracted features from the two or more images;
generate visual observations of motion based on a motion of matching extracted features relative to the two or more images;
estimate drift based at least on the visual observations of motion;
determine, from the estimated drift, whether the surface is carpeted or non-carpeted;
in response to determination that the surface is carpeted, generate a carpet drift vector based at least on the visual observations
of motion;

generate commands, using the carpet drift vector, configured to compensate for carpet drift; and
send the generated commands to the actuator system to compensate for the carpet drift.

US Pat. No. 9,375,842

AUTONOMOUS MOBILE ROBOT CONFINEMENT SYSTEM

iRobot Corporation, Bedf...

1. A robotic lawnmower confinement system comprising:
at least two dispenser units, each dispenser unit comprising:
a housing containing a length of boundary wire electrically connected to the housing at one end and terminating at a mating
connector for transferring an electrical signal at the opposite end, the housing defining an opening for dispensing a variable
length of the boundary wire; and

a receiving terminal disposed on the housing for receiving a mating connector of another dispenser unit; and
a powered unit in wired connection with the at least two dispenser units, the powered unit comprising at least one electrical
connector configured to connect and deliver current to at least one of the at least two dispenser units;

wherein the at least two dispenser units and the powered unit are arranged and connected to form a loop of connected boundary
wires recognizable by a robotic lawnmower.

US Pat. No. 9,327,412

COMPLIANT UNDERACTUATED GRASPER

iRobot Corporation, Bedf...

1. A compliant underactuated grasper comprising:
a palm base;
first and second fingers, wherein each of the first and second fingers comprises:
a proximal phalanx;
a distal phalanx; and
a compliant flexure joint connecting the distal phalanx to the proximal phalanx; and
first and second rotation joints connecting the first and second fingers, respectively, to the palm base to enable rotation
of the first and second fingers relative to the palm base, wherein the first and second fingers can be rotated relative to
the palm base about the first and second rotation joints to reorient the first and second fingers with respect to the palm
base and to change an angle defined between a pivot axis of the first finger and a pivot axis of the second finger;

wherein the distal phalanx of each of the first and second fingers includes:
a rounded end face; and
a lifting portion including a lifting edge adjacent the rounded end face;
wherein each of the first and second fingers further includes a tendon cable for moving the proximal and distal phalanges
such that movement of the tendon cable generates angular motion of the proximal phalanx about the pivot axis of the finger
at a greater rate than angular motion of the distal phalanx about the flexure joint; and

wherein, with respect to each of the first and second fingers:
the proximal phalanx is connected to the palm base for rotation about the pivot axis in a first direction and a second direction;
the grasper includes a return biasing spring to drive the proximal phalanx in the second direction to a return position;
the return biasing spring has a first spring rate;
the flexure joint is configured to bias the distal phalanx into an open position relative to the proximal phalanx and has
a second spring rate; and

the second spring rate is greater than the first spring rate.

US Pat. No. 9,320,400

ROBOTIC VACUUM CLEANING SYSTEM

iRobot Corporation, Bedf...

1. An autonomous coverage robot comprising:
a chassis having forward and rearward portions;
a drive system supported by the chassis and configured to maneuver the robot over a cleaning surface; and
a cleaning assembly supported by the chassis, the cleaning assembly comprising:
a roller housing;
a first roller rotatably mounted to the roller housing and defining a first longitudinal axis, the first roller being rotatable
about the first longitudinal axis in a first direction; and

a second roller rotatably mounted to the roller housing rearward of and substantially parallel to the first roller, the second
roller defining a second longitudinal axis and being rotatable about the second longitudinal axis in a second direction opposite
of the first direction;

wherein the second roller is spaced from the first roller to form an air gap therebetween; and
wherein the first and second rollers are each resiliently compressible to allow passage of an object having a dimension larger
than the air gap between the first and second rollers when the first and second rollers are counter-rotating in the respective
first and second directions.

US Pat. No. 9,320,409

AUTONOMOUS FLOOR CLEANING WITH REMOVABLE PAD

iRobot Corporation, Bedf...

1. A set of autonomous robot cleaning pads of different types, each of the cleaning pads comprising:
a pad body having opposite broad surfaces, including a cleaning surface and a mounting surface;
a pad type identification feature indicative of a type of a cleaning pad; and
a mounting plate secured across the mounting surface of the pad body and comprising a cutout that defines at least in part
the pad type identification feature, the mounting plate enabling a pad sensor of a robot, when the cleaning pad is mounted
to the robot, to detect the pad type identification feature.

US Pat. No. 9,308,643

TRANSFERABLE INTELLIGENT CONTROL DEVICE

iRobot Corporation, Bedf...

1. A method of controlling a transferable intelligent control device and a mobile robot, the method comprising:
in the transferable intelligent control device (TICD), having a first complement of sensors configured to detect an environment
and a cross-product communications module,

recording information regarding locations where the mobile robot is expected to travel and tracking the locations via a localization
system of the TICD as the TICD is transported through the environment,

building maps for the tracked locations within the environment,
learning a layout and location of rooms within the environment,
storing the maps, layout and location of rooms within the environment in a memory addressable via the cross-product communications
module or a wireless communications module, and

causing pertinent resources to be transferred, the pertinent resources including the maps, layout and location of rooms within
the environment, via the cross-product communications module to the mobile robot having a compatible cross-product communications
module; and

in the mobile robot, having an embedded intelligent control device with a second complement of sensors at least in part different
from the first complement of sensors in the transferable intelligent control device,

using the maps, layout, and location of rooms to drive the mobile robot to navigate through the environment.

US Pat. No. 9,296,109

MOBILE ROBOT FOR TELECOMMUNICATION

iRobot Corporation, Bedf...

1. A method comprising:
receiving, in non-transitory storage, configuration information from a mobile telepresence robot;
updating, using a computer processor in communication with the non-transitory storage, a user account stored in the non-transitory
storage using the configuration information;

provisioning, using the computer processor, a session initiation protocol address using the configuration information;
receiving, at the computer processor, a Voice-over-Internet Protocol datagram from a remote computing device, the Voice-over-Internet
Protocol datagram including a request for establishing a communication connection between the remote computing device and
the mobile telepresence robot; and

instantiating, at the computer processor, a communication connection between the remote computing device and the telepresence
robot.

US Pat. No. 9,375,847

ENVIRONMENTAL MANAGEMENT SYSTEMS INCLUDING MOBILE ROBOTS AND METHODS USING SAME

iRobot Corporation, Bedf...

1. A mobile robot, comprising:
a microprocessor connected to a memory and a wireless network circuit, for executing routines stored in the memory and commands
generated by the routines and received via the wireless network circuit;

driven wheels commandable by the microprocessor to reach a multiplicity of accessible two dimensional locations within a household;
an environmental sensor readable by the microprocessor, the microprocessor executing a plurality of routines including:
a first routine which commands the driven wheels to move the robot about the household,
a second routine which takes sensor readings at a plurality of the accessible two dimensional locations within the household,
a third routine which, based on the sensor readings throughout the household, sends data to a network entity having a dedicated
environmental sensor resulting in the activation of a motorized actuator on the network entity to perform mechanical work
in the household, even when the dedicated environmental sensor reading alone does not indicate that the motorized actuator
should be activated.

US Pat. No. 9,327,407

METHOD AND SYSTEM FOR MULTI-MODE COVERAGE FOR AN AUTONOMOUS ROBOT

iRobot Corporation, Bedf...

1. A mobile robot comprising:
drive wheels operable to move the robot over a surface;
an obstacle detection sensor; and
a control system operatively connected to the obstacle detection sensor and to the drive wheels;
wherein said control system is configured to:
operate the robot in a plurality of modes including both an obstacle following mode in which the robot travels adjacent to
an encountered obstacle, and a bounce mode in which the robot travels away from an encountered obstacle;

track a frequency of obstacle encounters; and to operate the robot in the obstacle following mode over a distance determined
as a function of the tracked frequency of obstacle encounters.

US Pat. No. 9,326,654

ROLLER BRUSH FOR SURFACE CLEANING ROBOTS

iRobot Corporation, Bedf...

1. A rotatable roller brush assembly for a cleaning appliance, the roller brush assembly comprising:
a first roller brush comprising:
a first brush core defining a longitudinal axis of rotation;
three or more dual rows of bristles disposed on and equidistantly spaced along a circumference of the first brush core, each
dual row of bristles comprising:

a first bristle row comprising a first bristle composition and having a first height; and
a second bristle row comprising a second bristle composition and having a second height, the second bristle row circumferentially
spaced from the first bristle row by a gap less than or equal to 10% of the second height, the first height being less than
or equal to 90% of the second height, wherein the first bristle composition is stiffer than the second bristle composition;
and

elastomeric vanes arranged between and substantially parallel to the bristle rows, each vane extending from a first end attached
to the first brush core to a second end unattached from the first brush core; and

a second roller brush arranged rotatably opposite the first roller brush, the second roller brush comprising:
a second brush core defining a longitudinal axis of rotation; and
three or more rows of bristles disposed on and circumferentially spaced about the second brush core.

US Pat. No. 9,483,054

SYSTEMS AND METHODS FOR USING MULTIPLE HYPOTHESES IN A VISUAL SIMULTANEOUS LOCALIZATION AND MAPPING SYSTEM

iRobot Corporation, Bedf...

1. A method for localizing a mobile device in a visual simultaneous localization and mapping system, the method comprising:
visually observing an environment via a camera of the mobile device;
maintaining a map of landmarks in a data store on the mobile device based at least in part on visual observations of the environment
obtained from the camera of the mobile device using a processing system on the mobile device;

receiving an indication that a landmark has been recognized and estimating a visually-measured relative pose to the landmark,
wherein the relative pose reveals a change in pose from (i) the pose when the landmark was created and stored in the data
store to (ii) the pose when the physical landmark was re-observed;

receiving data from at least one dead reckoning sensor of the mobile device at the processing system on the mobile device
and storing the data, wherein the data from the dead reckoning sensor relates to movement of the mobile device within the
environment;

using data from the dead reckoning sensor to estimate a change in pose;
determining a current device pose estimate based upon the relative pose and the data from the dead reckoning sensor, wherein
visual observations of landmarks obtained from the camera sensor compensates for drift in the dead reckoning sensors,

wherein determining a current device pose further comprises using the change in pose estimated from the data from the dead
reckoning sensor and using a relative pose to calculate the current device pose estimate.

US Pat. No. 9,371,651

SYSTEMS AND METHODS FOR ROBOTIC GUTTER CLEANING ALONG AN AXIS OF ROTATION

iRobot Corporation, Bedf...

1. A gutter-cleaning device comprising:
a body defining a forward drive direction and configured to fit into a residential gutter;
a drive system supporting the body and configured to maneuver across the gutter; and
a driven impeller disposed on the body and defining an axis of rotation, the impeller having at least one agitator oriented
about the axis of rotation, the axis of rotation arranged at an angle to the forward drive direction to aim toward an inside
corner of the gutter to eject agitated debris from the gutter and away from the impeller.

US Pat. No. 9,370,290

SYSTEM AND METHOD FOR AUTONOMOUS MOPPING OF A FLOOR SURFACE

iRobot Corporation, Bedf...

1. A mobile robot configured to clean a surface, the mobile robot comprising:
a bump sensor configured to detect at least walls:
a cleaning assembly having a width; and
a motion controller system that causes the mobile robot to perform, a repeated number of times, driving operations comprising:
driving the mobile robot forward along a first straight path, by oscillating the mobile robot in forward and backward directions
by repeatedly:

driving the mobile robot forward a first distance along the first straight path;
driving the mobile robot backward a second distance along the first straight path, the second distance less than the first
distance;

at least partly in response to detecting, by the bump sensor, a wall:
driving the mobile robot in a 180 degree rotation while driving the mobile robot to a side of the first straight path by a
distance approximately equal to the width of the cleaning assembly;

driving the mobile robot forward along a second straight path parallel to the first straight path, by oscillating the mobile
robot in forward and backward directions by repeatedly:

driving the mobile robot forward the first distance along the second straight path;
driving the mobile robot backward the second distance along the second straight path, the second distance less than the first
distance.

US Pat. No. 9,278,690

AUTONOMOUS MOBILE ROBOT

iRobot Corporation, Bedf...

1. An autonomous mobile robot comprising:
a robot body
defining a forward drive direction and
having forward and rearward portions with respect to the forward drive direction,
the forward portion having a substantially straight forward surface bounded by comers positioned along a circumdiameter of
the robot body;

a drive system
supporting the robot body and
configured to maneuver the robot across a floor surface;
a sonar system disposed on the robot body,
the sonar system comprising
an array of sonar emitters and
an array of sonar receivers arranged along the length of the forward surface,
each emitter disposed adjacent a receiver and emitting a sound wave,
each receiver capable of receiving sound wave reflections, and
each emitter and receiver pair measuring a distance from the forward surface to a wall;
an optical side ranging sensor disposed on a side of the robot body and positioned adjacent at least one corner of the forward
surface; and

a control system supported by the robot body and in communication with the drive system, the sonar system, and the side ranging
sensor,

the control system:
determining an angle of approach of the forward surface to the wall based on sensor signals received from the array of sonar
receivers;

determining a closest comer distance to the wall, the comer distance measured as a shortest distance from a comer of the front
surface to the wall; and

causing the drive system to turn the robot body to avoid collision with the wall and align the forward drive direction parallel
to the wall with the robot body traveling adjacent the wall at a threshold wall following distance.

US Pat. No. 9,180,920

MOBILE ROBOTIC VEHICLE

iRobot Corporation, Bedf...

1. A robot comprising:
a robot chassis having a forward end, a rearward end and a center of gravity;
a support surface configured to propel the robot chassis;
a trailing arm rotatable about an axis located rearward of the center of gravity of the robot chassis and nearer to the rearward
end of the robot chassis than the forward end of the robot chassis; and

a controller configured to execute a stair climbing control routine, including causing the robot to perform operations comprising:
driving the support surface over an underlying surface towards a stair so that the forward end of the robot chassis faces
the stair;

pivoting the trailing arm downward against the underlying surface and causing the forward end of the robot chassis to raise
up off the underlying surface, the trailing arm having a distal end that contacts the underlying surface forward of the center
of gravity of the robot;

pivoting the trailing arm upwards away from the underlying surface;
driving the support surface towards the stair, causing the forward end of the robot to ascend the stair; and
pivoting the trailing arm so that the distal end contacts the underlying surface at a point behind the support surface while
the robot ascends the stair.

US Pat. No. 9,092,458

SYSTEM AND METHOD FOR MANAGING SEARCH RESULTS INCLUDING GRAPHICS

iRobot Corporation, Bedf...

1. A computer implemented method comprising:
receiving, at a computer system comprising hardware, a user search query consisting only of text;
receiving, at the computer system, ranked image search results from a first image search corresponding to the user search
query, the user search query consisting only of text, the ranked search results comprising a first plurality of images;

classifying, by the computer system, a first subset of the first plurality of images as a first group based at least in part
on a first subject matter;

classifying, by the computer system, a second subset of the first plurality of images as a second group based at least in
part on a second subject matter;

providing, by the computer system, for display on a user computing device a first visual representation corresponding to the
first subset of images, the first visual representation comprising a first thumbnail image representative of the first subject
matter, and a second visual representation corresponding to the second subset of images, the second visual representation
comprising a second thumbnail image representative of the second subject matter;

receiving, by the computer system, a selection of the first thumbnail image, the second thumbnail image being unselected;
automatically identifying, by the computer system, a first keyword based at least in part on the user selection of the first
thumbnail image, the first keyword not included in the user search query, wherein the identification of the first keyword
is based at least in part on identifying words used in webpages associated with the first subset of images represented by
the selected first thumbnail image, wherein the identified words appear in greater frequency in webpages associated with the
first subset of images represented by the selected first thumbnail image than a frequency of appearance of the identified
words in webpages associated with the second subset of images represented by the unselected second thumbnail image;

executing, by the computer system, a first refined image search using a first search query comprising the automatically identified
first keyword, wherein the first search query comprising the automatically identified first keyword is different than the
user search query, wherein the first refined image search is performed using a first textual search query comprising the automatically
identified first keyword;

receiving, by the computer system, second ranked image search results from the first refined image search, the second ranked
search results comprising a second plurality of images;

generating, by the computer system, a similarity metric for images included in the second ranked image search results based
at least in part on how many visual features are common to two or more images in the second ranked image search results and
a quality with which the visual features give rise to patterns that can be matched or aligned;

classifying, by the computer system, a subset of the second plurality of images as a third group using the similarity metric
for images included in the second plurality of images;

providing for display, by the computer system, on the user computing device:
a visual representation corresponding to the third group of images, the visual representation corresponding to the third group
of images comprising a third thumbnail image, and

a visual representation corresponding to a fourth group of images, the visual representation corresponding to the fourth group
of images comprising a fourth thumbnail image;

receiving, by the computer system, a selection of the third thumbnail image, the fourth thumbnail image being unselected;
automatically identifying, by the computer system, a second keyword based at least in part on the user selection of the third
thumbnail image, the second keyword not included in the user search query, wherein the identification of the second keyword
is based at least in part on identifying words used in webpages associated with the third group of images represented by the
selected third representative thumbnail image, wherein the identified words appear in webpages associated with the third group
of images, represented by the selected third thumbnail image, in greater frequency than a frequency of appearance of the identified
words in webpages associated with the fourth group of images represented by the unselected fourth thumbnail image;

executing, by the computer system, a second refined image search using a second search query comprising the automatically
identified second keyword, wherein the second search query comprising the automatically identified second keyword is different
than the user search query, wherein the second refined image search is performed using a second textual search query comprising
the automatically identified second keyword; and

providing, by the computer system, for display on the user computing device search results, comprising a fifth group of images,
from the second refined image search.

US Pat. No. 9,265,396

AUTONOMOUS FLOOR CLEANING WITH REMOVABLE PAD

iRobot Corporation, Bedf...

1. An autonomous floor cleaning robot, comprising:
a robot body;
a controller supported by the robot body;
a drive supporting the robot body to maneuver the robot across a floor surface in response to commands from the controller;
a pad holder attached to an underside of the robot body and to hold a removable cleaning pad during operation of the cleaning
robot, the removable cleaning pad comprising a mounting plate and a mounting surface, the mounting plate being attached to
the mounting surface; and

a pad sensor to sense a feature on the removable cleaning pad and to generate a signal based on the feature, the feature defined
at least in part by a cutout on the mounting plate;

wherein the mounting plate enables the pad sensor to detect the feature, and wherein the controller is responsive to the signal
generated by the pad sensor to perform operations comprising:

selecting a cleaning mode from among cleaning modes based on the signal, and
controlling the robot according to a selected cleaning mode.

US Pat. No. 9,480,381

COMPACT AUTONOMOUS COVERAGE ROBOT

iRobot Corporation, Bedf...

1. An autonomous robot comprising:
a chassis having a substantially rectangular forward portion and a substantially arcuate rearward portion when viewed from
above, the forward portion having a forward edge and side edges connected to the forward edge at corners, the side edges positioned
on lateral sides of the robot;

a cleaning assembly carried by the chassis and positioned forward of two drive wheels;
a proximity sensor carried by the chassis and responsive to object proximity with respect to one or more of the lateral sides
of the robot;

a bumper extending along the forward edge of the chassis and along at least a portion of the side edges of the chassis, the
bumper comprising a plurality of capacitive sensors, including a respective pair of capacitive sensors disposed adjacent each
of the corners, each of the pairs of capacitive sensors including a forward corner capacitive sensor and a lateral corner
capacitive sensor, such that signals from the pair of capacitive sensors adjacent a respective corner are indicative of both
direction and location of a contact with an obstacle at or near the respective corner; and

a drive system carried by the chassis and configured to change a direction of travel of the robot in response to a determined
direction and location of the contact between the bumper and the obstacle,

wherein the drive system is configured to cause the robot to back up, turn in place and perform an obstacle following routine
based on the proximity sensor detecting an obstacle on one of the lateral sides of the robot.

US Pat. No. 9,283,674

REMOTELY OPERATING A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A method of operating a robot, the method comprising:
electronically receiving images;
augmenting the images by overlaying a representation of the robot on the images, the robot representation comprising user-selectable
portions corresponding to movable portions of the robot;

electronically displaying the augmented images;
receiving an indication of a selection of at least one user-selectable portion of the robot representation;
electronically displaying an intent to command the selected at least one user-selectable portion of the robot representation;
receiving an input representative of a user interaction with at least one user-selectable portion;
determining at least one movement parameter of at least one movable portion of the robot using inverse kinematics based on
the received input; and

issuing a command to the robot based on the at least one movement parameter.

US Pat. No. 9,211,648

OPERATING A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A method of operating a mobile mission robot, the method comprising:
driving the mobile mission robot according to a drive command issued by a remote operator control unit in communication with
the mobile mission robot, the mobile mission robot having a gripper thereon for retaining and transporting a repeater robot
in communication with the operator control unit and the mobile mission robot, the repeater robot comprising:

a robot body;
a drive system supporting the robot body and configured to maneuver the repeater robot over a work surface;
a sensor system disposed on the robot body; and
a controller in communication with the drive system, the sensor system, and the operator control unit, the controller configured
to execute a control arbitration system and a behavior system in communication with each other, the behavior system executing
at least one behavior that influences execution of commands by the control arbitration system based on sensor signals received
from the sensor system, the controller having a communication system configured to:

receive a first communication signal from the operator control unit and retransmit the first communication signal to the mobile
mission robot; and/or

receive a second communication signal from the mobile mission robot and retransmit the second communication signal to the
operator control unit;

deploying the repeater robot by releasing the repeater robot from the gripper at a first distance from the operator control
unit; and

driving the mobile mission robot to a second distance from the operator control unit, the second distance being greater than
the first distance.

US Pat. No. 9,146,560

SYSTEM AND METHOD FOR IMPLEMENTING FORCE FIELD DETERRENT FOR ROBOT

iRobot Corporation, Bedf...

1. A cover structure configured to limit infrared transmission between a navigation beacon having at least two infrared emitters
and a robot having at least two receivers, the structure comprising:
a top portion defining an opening; and
a wall portion having an upper periphery, a lower periphery, and a height extending between the upper and lower peripheries,
the upper periphery of the wall portion adjoining a periphery of the top portion, the top and wall portions together defining
a volume sized to receive at least a portion of a navigation beacon having a directional infrared emitter, the wall portion
configured to block an infrared signal transmitted by the directional infrared emitter on the portion of the navigation beacon
positionable within the volume;

wherein the opening in the top portion is configured to fit around a base of an omni-directional infrared emitter of the navigation
beacon, the omni-directional infrared emitter protruding from the opening such that the cover structure fails to impede transmission
of a proximity signal field by the omni-directional infrared emitter; and

wherein an interior of the wall portion comprises a plurality of ribs extending vertically along a length of the wall portion
with respect to a surface supporting the cover structure and configured to align the wall portion relative to the omni-directional
infrared emitter.

US Pat. No. 9,104,202

REMOTE VEHICLE MISSIONS AND SYSTEMS FOR SUPPORTING REMOTE VEHICLE MISSIONS

iRobot Corporation, Bedf...

1. An operator control unit comprising:
a transmission unit configured to transmit data to a remote vehicle;
a receiver unit configured to receive data from the remote vehicle, the data received from the remote vehicle comprising image
data captured by the remote vehicle; and

a display unit configured to display a user interface comprising the image data received from the remote vehicle and icons
representing a plurality of controllable elements of the remote vehicle, and configured to receive an input for a control
command to control at least one of the plurality of controllable elements, the plurality of controllable elements comprising:

one or more motor control nodes of an articulated manipulator arm having multiple coupled portions, each motor control node
causing movement of one coupled portion relative to another coupled portion;

wherein receiving a control command to control the at least one controllable element comprises:
receiving a selection of an icon representing at least one controllable element;
receiving a move command comprising a movement of the icon from a first position to a second position on the display unit,
the icon constrained to move only in directions of possible movement of the corresponding at least one controllable element,
movement of the selected icon causing movement on the display unit of any other icons representing any controllable elements
movably coupled to the at least one controllable element of the selected icon, the movement of the any other icons corresponding
to a change in pose of the remote vehicle resulting from the move command; and

when the selected icon represents a motor control node of the manipulation arm and when the move command comprises a corresponding
linear movement of the selected icon, the corresponding linear movement causing movement of other icons representing other
motor control nodes of the manipulation arm with respect to the selected icon.

US Pat. No. 9,469,030

INTERFACING WITH A MOBILE TELEPRESENCE ROBOT

INTOUCH TECHNOLOGIES, Go...

1. A telepresence robot system comprising:
an electronic display;
a processor in communication with the electronic display;
a memory device in communication with the processor, the memory device containing instructions, that when executed by the
processor, cause the processor to:

retrieve a destination list including destination locations within a facility;
receive a video feed from an imaging system of a remote telepresence robot at a first perspective;
display the video feed from the imaging system of the remote telepresence robot; and
control a movement of the remote telepresence robot by transmitting a command to the remote telepresence robot specifying
the movement for the remote telepresence robot from a current location to a destination location via a drive motor; and

a user input device in communication with the processor, the user input device configured to enable a user to select the movement
for the remote telepresence robot from the current location to the destination location via one of a plurality of options
on a single user interface, the plurality of options comprising:

selecting a velocity-based control specifying a direction of the movement of the remote telepresence robot;
selecting a destination location of the remote telepresence robot with respect to the destination list; and
selecting a destination location of the remote telepresence robot with respect to the video feed.

US Pat. No. 9,195,256

CONTROL SYSTEM FOR A REMOTE VEHICLE

iRobot Corporation, Bedf...

1. A hand-held controller for operating a remote vehicle, the hand-held controller comprising:
a controller body having right and left grips, the controller body defining a left control zone adjacent the left grip and
a right control zone adjacent the right grip, the controller body comprising:

a first set of input devices disposed in the left control zone, the first set of input devices including:
a first analog joystick disposed on a first surface of the controller body;
a first array of buttons adjacent the first analog joystick; and
a left rocker control disposed on a second surface of the controller body that is different than the first surface;
a second set of input devices disposed in the right control zone, the second set of input devices including:
a second analog joystick disposed on the first surface of the controller body;
a second array of buttons adjacent the second analog joystick; and
a right rocker control disposed on the second surface of the controller body; and
a processor in communication with the controller body and the remote vehicle;
wherein at least one of the left rocker control and the right rocker control is configured to receive an input to control
a position of a rotatable flipper of the remote vehicle; and

wherein the controller body is formed by one or more materials and/or includes a coating configured to ruggedize and waterproof
the controller body.

US Pat. No. 9,479,732

IMMERSIVE VIDEO TELECONFERENCING ROBOT

iRobot Corporation, Bedf...

1. A method comprising:
receiving, at a mobile teleconferencing robot maneuverable across a ground surface, a remote user input to alter a viewing
state of a vision system of the mobile teleconferencing robot, the vision system comprising:

a forward imaging sensor arranged on a top portion of the mobile teleconferencing robot at a first location to have a forward
field of view aimed along a forward drive direction of the mobile teleconferencing robot and configured to capture a forward
video feed;

a right imaging sensor arranged on a right portion of the mobile teleconferencing robot at a second location vertically apart
from the first location to have a right field of view aimed in a right direction with respect to the forward drive direction,
the right imaging sensor configured to capture a right video feed; and

a left imaging sensor arranged on a left portion of the mobile teleconferencing robot at a third location vertically apart
from the first location to have a left field of view aimed in a left direction with respect to the forward drive direction,
the left imaging sensor configured to capture a left video feed;

altering the viewing state of the vision system by adjusting a tilt angle of the forward imaging sensor with respect to a
vertical axis of the mobile teleconferencing robot and/or a zoom level of the forward imaging sensor based on the remote user
input;

generating a combined video feed that provides an immersive peripheral view about the mobile teleconferencing robot by combining
the forward video feed with a portion of the right video feed and a portion of the left video feed, the combined video feed
comprising video feed dividers between the forward video feed, the portion of the right video feed, and the portion of the
left video feed, each video feed divider having a position and a lean angle with respect to a vertical viewing axis based
on the altered viewing state of the vision system; and

outputting the combined video feed from the mobile teleconferencing robot to a remote computing system.

US Pat. No. 9,380,922

ENVIRONMENTAL MANAGEMENT SYSTEMS INCLUDING MOBILE ROBOTS AND METHODS USING SAME

iRobot Corporation, Bedf...

1. A computer-implemented method for receiving user commands for a remote cleaning robot and sending the user commands to
the remote cleaning robot, the remote cleaning robot including a drive motor and a cleaning motor, the method comprising:
displaying a user interface on a user terminal, the user interface including a control area, and within the control area:
a user-manipulable launch control group including a plurality of control elements, the launch control group having a deferred
launch control state and an immediate launch control state;

at least one user-manipulable cleaning strategy control element having a primary cleaning strategy control state and an alternative
cleaning strategy control state; and

a physical recall control group including a plurality of control elements, the physical recall control group having an immediate
recall control state and a remote audible locator control state;

receiving user input via the user-manipulable control elements;
responsive to the user inputs, displaying simultaneously within the same control area a real-time robot state reflecting a
unique combination of control states;

commanding the remote cleaning robot to actuate the drive motor and cleaning motor to clean a surface based on the received
input and unique combination of control states;

displaying, in the user interface, a graphical representation of an area to be cleaned by the remote cleaning robot and at
least one user-manipulable pre-planned cleaning strategy control element having a deep cleaning strategy control state and
a quick cleaning strategy control state, wherein:

responsive to selection of the deep cleaning strategy control state, the user terminal commands the remote cleaning robot
to execute a relatively higher cumulative energy cleaning strategy; and

responsive to selection of the quick cleaning strategy control state, the user terminal commands the remote cleaning robot
to execute a relatively lower cumulative energy cleaning strategy;

receiving user input via the at least one pre-planned cleaning strategy control element selecting different pre-planned cleaning
strategies for different subsections of the graphical representation of the area to be cleaned by the remote cleaning robot
in a pre-planned cleaning session; and

commanding the remote cleaning robot to clean corresponding subsections of the surface in accordance with the user inputs
of the pre-planned cleaning strategies;

wherein:
the relatively higher cumulative energy cleaning strategy includes traveling a multiple pass travel path that is one of deterministic,
systematic, and planned; and

the relatively lower cumulative energy cleaning strategy includes traveling a single pass travel path that is one of deterministic,
systematic, and planned.

US Pat. No. 9,193,066

MANEUVERING ROBOTIC VEHICLES HAVING A POSITIONABLE SENSOR HEAD

iRobot Corporation, Bedf...

1. A robot, comprising:
a chassis having a front, a rear, a left side, and a right side;
a steerable drive supporting the chassis, including:
left and right front flippers coupled to the left and right sides of the chassis near the front of the chassis; and
left and right rear flippers coupled to the left and right sides of the chassis near the rear of the chassis;
a first extension moveably coupled to the chassis;
a second extension having proximal and distal ends and being coupled to the first extension at the proximal end with a first
tilt axis actuator; and

a sensor head coupled to the distal end of the second extension;
wherein each of the left and right front flippers and the left and right rear flippers comprises:
a pivot end coupled to the chassis and about which the flipper is rotatable, and
a distal end having a wheel about which a ground-contacting track is trained.

US Pat. No. 9,104,204

METHOD AND SYSTEM FOR MULTI-MODE COVERAGE FOR AN AUTONOMOUS ROBOT

iRobot Corporation, Bedf...

1. A mobile coverage robot, comprising:
a drive mechanism comprising drive wheels that both drive the robot forward across a surface in a drive direction and turns
the robot to change the drive direction;

a floor cleaner disposed on a lateral side of the robot;
a proximity sensor aimed forward of the drive wheels in the drive direction, the proximity sensor responsive to an object
proximate the lateral side of the robot;

a tactile sensor responsive to a bump event between the robot and an object, the tactile sensor comprising a bumper switch;
and

a plurality of floor level sensors, each floor level sensor responsive to a condition of an area below the robot, the floor
level sensors comprising:

a cliff sensor aimed forward of the drive wheels in the drive direction and responsive to a presence of a cliff in the drive
direction of the robot; and

a wheel drop sensor responsive to a wheel drop event; and
a drive controller in communication with the proximity sensor, the tactile sensor, and the plurality of floor level sensors,
the drive controller configured to:

operate the robot to follow a sensed object on the lateral side of the robot;
operate the robot to travel in an altered direction in response to a bump event between the robot and the object, and to shut
off the robot in response to determining that the bumper switch has been constantly depressed for a predetermined amount of
time;

operate the robot to avoid a cliff; and
reduce the velocity of the robot in response to a wheel drop event.

US Pat. No. 9,043,952

LAWN CARE ROBOT

iRobot Corporation, Bedf...

1. A robot lawnmower comprising:
a body;
a drive system carried by the body and configured to maneuver the robot across a lawn;
a controller carried by the body and in communication with the drive system;
a grass cutter carried by the body;
at least one obstacle sensor carried by the body and in communication with the controller, the at least one obstacle sensor
configured to detect surface phenomenon that may be treated as an obstacle;

a manual handle configured to be extendable from the body; and
a handle connector carried by the body, the handle connector configured to detect if the manual handle is extended relative
to the body;

wherein the controller is configured to operate in a check setup mode in which a user maneuvers the robot to circumnavigate
and approach a boundary and obstacles while the robot is in manual mode and permit operation of the robot in an autonomous
mode only after the check setup mode is completed and the handle connector detects that the manual handle is not extended
relative to the body.

US Pat. No. 9,463,574

MOBILE INSPECTION ROBOT

iRobot Corporation, Bedf...

1. A mobile inspection robot comprising:
a robot body;
a drive system supporting the robot body and configured to maneuver the robot over a work surface;
an arm disposed on the robot body;
a controller in communication with the drive system and executing a control system, the controller configured to:
obtain a layout map of a data center; and
obtain scanning locations of the data center, each scanning location associated with at least one scanning height; and
a sensor system in communication with the controller, the sensor system comprising at least one scanner payload disposed on
the arm, the at least one scanner payload comprising a temperature sensor;

wherein the control system comprises a control arbitration system and a behavior system in communication with each other,
the behavior system executing an inspection behavior, the inspection behavior configured to influence execution of commands
by the control arbitration system based on sensor signals received from the sensor system to:

issue drive commands to the drive system based on the layout map to autonomously maneuver the mobile inspection robot to at
least one scanning location of the data center;

obtain at least one temperature reading using the temperature sensor of the at least one scanner payload at the at least one
scanning height associated with the at least one scanning location; and

output a three-dimensional model of the data center to a display system in communication with the controller, the three-dimensional
model including an augmented overlay of the obtained at least one temperature reading at the corresponding at least one scanning
location, and

wherein the inspection behavior causes the mobile inspection robot to:
identify electrical equipment as an inspection target; and
obtain at least one sensor reading relative to the inspection target using the sensor system.

US Pat. No. 9,400,503

MOBILE HUMAN INTERFACE ROBOT

iRobot Corporation, Bedf...

1. A method of object detection for a mobile robot, the method comprising:
emitting a speckle pattern of light onto a scene about the robot while maneuvering the robot across a work surface of a working
area;

receiving odometry measurements from a drive system of the robot while maneuvering the robot across the work surface;
determining a first motion of the robot based on the odometry measurements;
determining a current location of the robot in the working area based on the first robot motion and a previously determined
location of the robot;

receiving reflections of the emitted speckle pattern off surfaces of a target object in the scene;
determining a second motion of the robot using visual odometry of the robot based on an optical flow of the received reflections;
determining a robot motion error between the first robot motion based on the drive system odometry and the second robot motion
based on the visual odometry;

adjusting the current location of the robot based on the robot motion error;
determining a distance of each reflecting surface of the target object;
constructing a three-dimensional depth map of the target object using the received reflections, the determined distance of
each reflecting surface of the target object, and the adjusted current location of the robot; and

classifying the target object using the three-dimensional depth map, the classifying comprising:
determining a state, a pose, or a gesture of the target object;
classifying the target object as a living object based on the state, the pose, or the gesture of the target object;
determining whether the living object needs assistance by determining one or more of whether the living object is alive, sitting,
lying down, waiving, falling, or fallen based on the state, the pose, or the gesture; and

when the living object needs assistance, determining a type of assistance needed based on the state, the pose, or the gesture.

US Pat. No. 9,110,471

SYSTEMS AND METHODS FOR MULTI-MODAL CONTROL OF A VEHICLE

iRobot Corporation, Bedf...

1. A vehicle capable of manned operation, the vehicle comprising:
(a) a first subsystem, comprising:
a computing medium having computer readable code embodied therein for selectively controlling the vehicle, the computer readable
code comprising:

(i) code for enabling the vehicle to be remotely controlled by an operator not physically present in the vehicle;
(ii) code for causing the vehicle to be autonomously controlled without operator intervention; and
(iii) code for enabling autonomous operation of a first vehicle feature in combination with remote operator control of a second
vehicle feature; and

(b) a second subsystem in electrical communication with the first subsystem, the second subsystem comprising:
a plurality of actuators for manipulating one or more devices of the vehicle; and
a controller for controlling at least one actuator in response to an instruction received from the computing medium,
wherein the controller, in response to an instruction generated by the code for enabling autonomous operation of the first
vehicle feature in combination with remote operator control of the second vehicle feature, autonomously controls a first set
of at least one actuator and contemporaneously controls a second set of at least one actuator in accordance with at least
one remote transmission received from a tele-operator.

US Pat. No. 9,486,924

REMOTE CONTROL SCHEDULER AND METHOD FOR AUTONOMOUS ROBOTIC DEVICE

iRobot Corporation, Bedf...

1. A method of cleaning a room, the method comprising:
transmitting from a cleaning robot to a mobile phone a status of the cleaning robot; and
receiving at the cleaning robot from the mobile phone, in response to an operator command input at the mobile phone and at
least in part indicative of a schedule, information including instructions configured to cause a processor of the cleaning
robot to execute a cleaning operation in the room according to the schedule, wherein executing the cleaning operation in the
room according to the schedule comprises:

leaving a stationary charging device at which the cleaning robot is docked according to the schedule, and
navigating about a floor surface of the room.

US Pat. No. 9,220,389

CLEANING PAD

iRobot Corporation, Bedf...

1. A cleaning pad for a mobile robot, comprising:
absorbent layers that are stacked and bonded together, the absorbent layers each comprising one or more airlaid layers for
absorbing liquid through capillary action and for distributing the liquid within a core of the cleaning pad;

a wrap layer around the absorbent layers, the wrap layer being adhered to at least some of the absorbent layers to hold the
absorbent layers, the wrap layer comprising a fiber-entangled layer that is flexible and absorbent, the fiber-entangled layer
having holes therein for absorption of liquid through capillary action, the wrap layer further comprising an abrasive layer
on a bottom surface of the fiber-entangled layer that faces away from the mobile robot when the cleaning pad is attached to
the mobile robot, the abrasive layer comprising fibers that cover at least part of the bottom surface of the fiber-entangled
layer and that produce an abrasive surface that is rougher than a surface of the fiber-entangled layer; and

a backing layer adhered to a top surface of the fiber-entangled layer that faces toward the mobile robot when the cleaning
pad is attached to the mobile robot, the backing layer comprising protruding edges that extend beyond longitudinal edges of
the wrap layer around the absorbent layers, the protruding edges having cutouts centered along the protruding edges to engage
corresponding features of a pad holder on the mobile robot and thereby attach the backing layer, and thus the cleaning pad,
to the pad holder.

US Pat. No. 9,446,510

COMPANION ROBOT FOR PERSONAL INTERACTION

iRobot Corporation, Bedf...

1. A human-interaction robot comprising:
a head support;
a head assembly connected to the head support by a movable joint, the head assembly comprising a display;
a teleconferencing unit comprising at least one camera positioned on the head assembly, the teleconferencing unit being configured
to transmit and receive audio data and video data; and

a controller configured to:
cause the teleconferencing unit to transmit and receive the audio data and the video data and to display on the display of
the head assembly a video corresponding to the video data;

control the display to display multiple facial animations; and
control the movable joint to move the display to different orientations; wherein the controller is configured to receive a
conferencing request using a wireless networking protocol, and cause the teleconferencing unit to transmit and receive the
audio data and the video data using the wireless networking protocol and to display on the display of the head assembly the
video in response to receiving a conference accept signal.

US Pat. No. 9,233,468

COMMANDING A MOBILE ROBOT USING GLYPHS

iRobot Corporation, Bedf...

1. A method of operating a robot, the method comprising:
receiving image data from an image capture device of the robot, the image data representative of a glyph viewed by the image
capture device on a display of a computing device within a field of view of the image capture device;

determining, at a controller, a command message based on the glyph represented in the image data; and
issuing a command to at least one resource or component of the robot based on the command message,
wherein determining the command message includes determining network configuration data indicating a network identifier and/or
a network password based on the image data, and

wherein issuing the command includes configuring a network connection of the robot based on the network configuration data.

US Pat. No. 9,216,510

REMOTE VEHICLE CONTROL SYSTEM

iRobot Corporation, Bedf...

1. A remote vehicle system, comprising:
a remote vehicle, comprising a manipulator arm having end effector; and
a portable remote control system, comprising:
a computer in communication with the remote vehicle and configured to display a view of an environment of the remote vehicle
on a display; and

a remote dexterous control device in communication with the computer and comprising a hand held controller and a workspace
in which the hand held controller is manipulated;

wherein the computer is configured to translate movement of the hand held controller within the control device workspace into
corresponding movement of a portion of the remote vehicle in a portion of the remote vehicle environment and is configured
to translate the view of the remote vehicle environment on the display in a direction corresponding to movement of the hand
held controller within the control device workspace, when the hand held controller is moved to a perimeter of the control
device workspace.

US Pat. No. 9,248,874

ROBOTIC PLATFORM

iRobot Corporation, Bedf...

1. A method performed by an articulated vehicle, the method comprising:
driving the articulated vehicle along a drive direction over a surface, the vehicle comprising:
a main frame having right and left sides;
a drive system disposed on the main frame and configured to maneuver the articulated vehicle over the surface, the drive system
including a pair of parallel main tracks each coupled to a corresponding side of the main frame and each being driven by a
corresponding drive pulley rotating about a transverse axis generally perpendicular to the sides of the main frame and between
a top of the parallel main tracks and a bottom of the parallel main tracks;

at least one arm having a proximal end and a distal end, the proximal end of the at least one arm being pivotally coupled
to the main frame about the transverse axis that the drive pulleys rotate about;

an articulator motor disposed on the main frame and coupled to the at least one arm for pivoting the at least one arm above
the surface and about the transverse axis; and

a sensor system;
detecting, using the sensor system, that the articulated vehicle is in free fall; and
in response to detecting that the articulated vehicle is in free fall, automatically and without operator intervention assuming
a stowed position by rotating the at least one arm, using the articulator motor, so that the at least one arm is next to the
parallel main tracks.

US Pat. No. 9,178,370

COVERAGE ROBOT DOCKING STATION

iRobot Corporation, Bedf...

1. A coverage robot docking station comprising:
a base having a robot receiving surface;
a side wall extending from the base, the side wall and the receiving surface of the base defining a robot holder that supports
a received robot above a ground surface, the robot holder including a fluid collection portion arranged to collect fluid dripping
from the received robot; and

at least one charging contact disposed on the robot holder and configured for charging the received robot;
wherein the fluid collection portion includes a trough sized and shaped for collecting droplets of fluid dripping from wet
components of the received robot on the receiving surface.

US Pat. No. 9,498,886

MOBILE HUMAN INTERFACE ROBOT

iRobot Corporation, Bedf...

1. A method comprising:
receiving, at data processing hardware of a human interface robot, a touch signal from a touch sensor of a sensor system of
the human interface robot, the sensor system responsive to human interaction, the touch signal indicative of human contact
with the human interface robot and indicating a contact force direction with respect to a forward drive direction of the human
interface robot; and

in response to receiving the touch signal, issuing at least one drive command from the data processing hardware to a drive
system of the human interface robot, the at least one drive command causing the drive system to maneuver the human interface
robot across a floor surface along a commanded drive direction corresponding to the contact force direction,

wherein the touch signal indicates a contact force magnitude of the human contact with the human interface robot, and the
at least one drive command is based on the contact force magnitude.

US Pat. No. 9,776,327

SOCIAL BEHAVIOR RULES FOR A MEDICAL TELEPRESENCE ROBOT

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot comprising:
a drive system configured to move the telepresence robot;
a control system configured to control the drive system to drive the telepresence robot around a work area;
an object detection system configured to detect a human in proximity to the telepresence robot; and
a social behaviors component configured to provide instructions to the control system to cause the telepresence robot to operate
according to a first set of rules when a presence of one or more humans is not detected and operate according to a second
set of rules when the presence of one or more humans is detected;

wherein the second set of rules comprise a first maximum speed outside a first radius of the human and a second maximum speed
outside a second radius and within the first radius.

US Pat. No. 9,310,806

SYSTEM FOR LOCALIZATION AND OBSTACLE DETECTION USING A COMMON RECEIVER

iRobot Corporation, Bedf...

16. A localization and obstacle detection method comprising:
receiving at a first receiver physically associated with a mobile object both a first signal, the first signal projected from
a source other than the mobile object, and a second signal, the second signal projected from the mobile object, wherein the
first receiver comprises a single sensor used to receive both the first signal, used to determine a location of the robot,
and the second signal, used to determine a presence of an obstacle;

distinguishing the first received signal from the second received signal based on at least one signal characteristic that
differs between the first received signal and the second received signal;

localizing the mobile object in an environment based at least in part on the first received signal received at the single
sensor;

determining that the mobile object is proximate to an obstacle in the environment based at least in part on the second received
signal received at the single sensor;

maintaining a space between the mobile object and the proximate obstacle in the environment,
wherein the first signal and the second signal are of the same signal type and have at least one different characteristic
relative to each other.

US Pat. No. 9,420,741

ROBOT LAWNMOWER MAPPING

iRobot Corporation, Bedf...

1. A robot lawnmower system comprising:
a plurality of beacons positioned with respect to an area to be mowed;
a robot lawnmower comprising:
a detection system configured to detect the beacons; and
a controller configured to, while controlling the robot lawnmower to traverse a first reference point, a second reference
point, and a path within the area to be mowed, detect the beacons using the detection system and collect mapping data; and

one or more computer readable mediums storing instructions that, when executed by a system of one or more computing devices,
cause the system to perform operations comprising:

receiving the mapping data from the robot lawnmower;
receiving first and second geographic coordinates for the first and second reference points traversed by the robot lawnmower;
receiving a map image of the area from a mapping server;
aligning the mapping data to a coordinate system of the map image of the area using the first and second geographic coordinates,
the mapping data corresponding to the first reference point, the second reference point, and the path traversed by the robot
lawnmower; and

causing a mobile device to display the map image of the area based on aligning the mapping data to the coordinate system.

US Pat. No. 9,452,525

COMPANION ROBOT FOR PERSONAL INTERACTION

iRobot Corporation, Bedf...

1. A robot system, comprising:
a base station; and
an autonomous mobile robot;
wherein the base station comprises:
a wireless transceiver configured to communicate transmissions with each of a plurality of autonomous mobile robots; and
an access point circuit for transferring transmissions between the Internet and the wireless transceiver, the access point
circuit configured to authenticate each of the robots using stored base station security information and corresponding stored
robot security information for each of the autonomous mobile robots;

wherein the robot comprises:
a drive connected to a processor to autonomously navigate the robot about an environment;
a wireless transceiver configured to communicate transmissions with the base station; and
a client circuit for transferring transmissions from the robot to the base station, the client circuit linked to the base
station by stored robot security information corresponding to the stored base station security information, the client circuit
configured so that, upon activation, the client circuit can authenticate to the base station using the stored robot security
information.

US Pat. No. 9,320,398

AUTONOMOUS COVERAGE ROBOTS

iRobot Corporation, Bedf...

1. An autonomous coverage robot comprising:
a body;
a drive system disposed on the body and configured to maneuver the robot; and
a cleaning assembly disposed on the body and configured to engage a floor surface while the robot is maneuvered across the
floor surface, the cleaning assembly comprising:

a driven cleaning roller defining a rotational center about which the cleaning roller is configured to rotate;
a cleaning bin disposed on the body for receiving debris agitated by the cleaning roller, the cleaning bin comprising:
a cleaning bin body having a cleaning bin entrance disposed adjacent to the cleaning roller, the cleaning bin body having
a holding portion in pneumatic communication with the cleaning bin entrance for receiving debris; and

a roller scraper disposed on the cleaning bin body for engaging the cleaning roller, the roller scraper being positioned such
that, during operation of the robot, the roller scraper engages a downwardly rotating portion of the cleaning roller; and

an air mover operable to move air into the cleaning bin entrance;
wherein the roller scraper is disposed at a lower edge of the cleaning bin entrance during the operation of the robot and
arranged to engage the cleaning roller above its rotational center, the lower edge being substantially linear, substantially
parallel to the cleaning roller, and of a length sufficient to substantially span the cleaning roller.

US Pat. No. 10,168,709

SYSTEMS AND METHODS FOR CONFIGURABLE OPERATION OF A ROBOT BASED ON AREA CLASSIFICATION

iRobot Corporation, Bedf...

1. A computing device, comprising:a processor; and
a memory coupled to the processor, the memory comprising a non-transitory computer-readable storage medium storing computer-readable program code therein that is executable by the processor to perform operations comprising:
generating a segmentation map defining respective regions of a surface based on occupancy data that is collected by a mobile robot responsive to navigation of the surface, wherein the segmentation map comprises simplified boundaries relative to actual boundaries indicated by the occupancy data;
identifying sub-regions of at least one of the respective regions as non-clutter and clutter areas;
modifying the segmentation map comprising the simplified boundaries to indicate the clutter areas responsive to identification thereof;
computing a coverage pattern based on identification of the sub-regions, the coverage pattern indicating a sequence for navigation of the non-clutter and clutter areas;
and
providing the coverage pattern to the mobile robot,
wherein, responsive to the coverage pattern, the mobile robot sequentially navigates the non-clutter and clutter areas of the at least one of the respective regions of the surface in the sequence indicated by the coverage pattern.

US Pat. No. 9,436,185

COVERAGE ROBOT NAVIGATING

iRobot Corporation, Bedf...

1. A method of navigating an autonomous coverage robot on a floor, the method comprising:
controlling movement of the robot across the floor in a cleaning mode along a stored heading;
receiving a sensor signal indicative of a nearing obstacle;
in response to receiving the sensor signal indicative of the obstacle, reducing a speed of the coverage robot across the floor
prior to contact with the obstacle;

subsequent to reducing the speed of the coverage robot, controlling movement of the robot to cause the robot to rotate in
a clockwise direction and in a counterclockwise direction;

determining a change in a received sensor signal during at least a portion of rotation of the robot in the clockwise direction
and in the counterclockwise direction;

determining a width of the obstacle based at least in part on the determined change in the received sensor signal;
controlling movement of the robot based on the determined width of the sensed obstacle, including:
in response to determining that the width of the sensed obstacle is less than a threshold, navigating the autonomous robot
according to a first behavior in which the robot travels to an opposite side of the obstacle and then resumes movement along
the stored heading, the first behavior comprising directing the robot to execute an orbiting routine comprising turning toward
the sensed obstacle using an orbit radius based on the determined width of the sensed obstacle and increasing the orbit radius
in response to a failure to move around the object by the orbiting routine.

US Pat. No. 9,110,470

SYSTEMS AND METHODS FOR USING MULTIPLE HYPOTHESES IN A VISUAL SIMULTANEOUS LOCALIZATION AND MAPPING SYSTEM

iRobot Corporation, Bedf...

1. A method of localizing a mobile device in a multiple-particle autonomous localization and mapping system using an electronic
device, the method comprising:
performing, using an electronic device, autonomous localization and mapping with a plurality of particles, wherein a particle
includes a device pose and a map, wherein the map includes at least one landmark;

calculating, using the electronic device, an updated device pose estimate for a particle, wherein the technique used to calculate
the updated device pose estimate is selected according to the type associated with the particle; and

using dead reckoning data to estimate a change in pose from a prior update to the particles using the electronic device;
wherein calculating the updated device pose estimate for the particle further comprises using the change in pose estimated
from dead reckoning data and using a relative pose to calculate the updated device pose estimate.

US Pat. No. 9,483,055

AUTONOMOUS COVERAGE ROBOT

iRobot Corporation, Bedf...

1. A mobile robot comprising:
a robot body having a forward drive direction;
a drive system supporting the robot body above a floor surface for maneuvering the robot across the floor surface;
a main circuit board in communication with the drive system;
a bumper frame defining a shape complementary of a front periphery of the robot body, the bumper frame supported by the robot
body; and

an obstacle sensor system disposed on the bumper frame, the obstacle sensor system comprising:
a multiplexing auxiliary circuit board supported by the bumper frame, the multiplexing auxiliary circuit board including a
computing processor and non-transitory memory, the computing processor capable of executing instructions stored on the non-transitory
memory;

an array of proximity sensors distributed along the bumper frame, each proximity sensor having at least two wires collected
in at least one wire collector, the at least one wire collector connected to the auxiliary circuit board, the array of proximity
sensors comprising an array of wall proximity sensors disposed along a forward perimeter of the bumper frame, each wall proximity
sensor directed outward substantially parallel to the floor surface; and

a communication line connecting the auxiliary circuit board to the main circuit board, the communication line having fewer
than half the wires connecting the array of proximity sensors to the auxiliary circuit board;

wherein the multiplexing auxiliary circuit board is configured to:
receive, at the computing processor, sensor signals from the array of proximity sensors;
process the received sensor signals using the computing processor;
package the processed sensor signals into a data packet recognizable by the main circuit board; and
send the data packet from the computing processor to the main circuit board.

US Pat. No. 9,442,488

PROXIMITY SENSING ON MOBILE ROBOTS

iRobot Corporation, Bedf...

1. A proximity sensor comprising:
a sensor body;
a first emitter housed by the sensor body;
a second emitter housed by the sensor body adjacent to the first emitter; and
a receiver disposed adjacent the first emitter opposite the second emitter;
wherein the first emitter has a first field of view, the second emitter has a second field of view, and the receiver has a
third field of view; and

wherein an intersection of the first and third field of views defines a first volume and an intersection of the second and
third fields of view defines a second volume, the first volume detecting a first surface within a first threshold distance
from a sensing reference point and the second volume detecting a second surface within a second threshold distance from the
sensing reference point, the second threshold distance being greater than the first threshold distance.

US Pat. No. 9,135,554

ROBOT CONTROLLER LEARNING SYSTEM

iRobot Corporation, Bedf...

1. A threshold learning control system for learning a robot controller of a robot, the threshold learning control system comprising:
a threshold learning module executing on a data processing apparatus and receiving sensor inputs from a sensor system of the
robot;

a regime classifier executing on the data processing apparatus and receiving sensor inputs from the sensor system of the robot
and determining a control regime based on the received sensor inputs, the regime classifier communicating the control regime
to the threshold learning module, the regime classifier receiving at least one state-action map, each state-action map having
control regimes arranged contiguously with boundaries therebetween, and each control regime providing a state-action space
of possible robot states and robot actions in a corresponding control space;

an exploratory controller executing on the data processing apparatus and receiving sensor inputs from the sensor system of
the robot and control parameters from the threshold learning module; and

a control arbiter executing on the data processing apparatus and receiving exploratory commands from the exploratory controller
and limits from the threshold learning module, the control arbiter issuing modified exploratory commands based on the received
limits to the robot controller,

wherein the threshold learning module learns the boundaries between control regimes within the state-action space of the at
least one state-action map using at least one of the received sensor inputs, control regime classifications of the regime
classifier, anchor points of the at least one state-action map, and feedback of the modified exploratory commands issued by
the control arbiter.

US Pat. No. 9,866,035

ROTATABLE COUPLING

iRobot Corporation, Bedf...

1. A continuously rotatable coupling, comprising
an input housing rotatably coupled to an output housing by a hollow tube fixed to the output housing and on which tube the
input housing rotates, the hollow tube defining a central passage;

two cooperating magnetic flux concentrators disposed about the tube and defining therebetween an annular cavity, the flux
concentrators comprising a first flux concentrator fixed to the input housing and a second flux concentrator fixed to the
output housing, such that relative rotation of the input and output housings causes relative rotation of the flux concentrators
on either side of the annular cavity;

concentric coils disposed within the annular cavity and positioned to permit electrical contact-free power transfer across
the coupling, a first of the concentric coils fixed to the input housing and a second of the concentric coils fixed to the
output housing;

an optical data emitter fixed to the input housing and positioned to transmit optical signals through the central passage;
and

an optical data receiver fixed to the output housing and positioned to receive the optical signals from the input optical
data emitter during the relative rotation of the input and output housings.

US Pat. No. 9,404,756

ADAPTIVE MAPPING WITH SPATIAL SUMMARIES OF SENSOR DATA

iRobot Corporation, Bedf...

1. A method of generating a map using mapping parameters acquired by a mobile robotic system in an environment, the method
comprising:
for a given local grid in a plurality of local grids:
mapping by the mobile robotic system local parameter data to a corresponding grid, wherein the corresponding grid includes
a two dimensional Cartesian representation depicting:

locations of obstacles detected by the mobile robotic system within the environment;
spaces traversed by the mobile robotic system within the environment; and
merging by the mobile robotic system parameter data from the plurality of local grids into one or more spatial summaries in
response to one or more of:

elapsed time,
space covered by the mobile robotic system or area mapped by the mobile robotic system,
a grid memory limitation, or
total number of grids or anchor nodes.

US Pat. No. 9,400,501

SIMULTANEOUS LOCALIZATION AND MAPPING FOR A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A method comprising:
receiving, at a computing device, sensor data from an autonomous mobile robot operating in a work environment;
updating, using the computing device, an occupancy map of the work environment with location occupancy probabilities based
on the received sensor data;

determining, using the computing device, a localization quality of the autonomous mobile robot; and
when the localization quality does not satisfy a threshold localization quality, executing, using the computing device, a
wall-following behavior that causes the autonomous mobile robot to maneuver toward a wall in the work environment and drive
adjacent to the wall until the localization quality satisfies the threshold localization quality.

US Pat. No. 9,346,499

RESILIENT WHEEL ASSEMBLIES

IROBOT CORPORATION, Bedf...

1. A wheel assembly for a vehicle, the wheel assembly comprising:
a wheel structure including:
a continuous, annular rim;
a hub; and
a plurality of spokes interconnecting the rim and the hub, the spokes comprising at least one slit extending therethrough
radially inward from the rim to the hub,

wherein the spokes are configured to absorb radial and axial forces, and
wherein the at least one slit is configured to reduce an axial stiffness of the spokes; and
a flipper structure coupled to the wheel structure, the flipper structure including:
an arm having a proximal end and a distal end;
a plurality of legs coupled to the proximal end of the arm; and
an attachment base coupled to the plurality of legs,
wherein the plurality of legs and the attachment base comprise a four-bar linkage configured to allow translation of the arm
during impacts and provide rotational stiffness to the arm to lift the vehicle.

US Pat. No. 9,223,312

CARPET DRIFT ESTIMATION USING DIFFERENTIAL SENSORS OR VISUAL MEASUREMENTS

iRobot Corporation, Bedf...

1. A robotic device comprising:
a body;
an actuator system configured to move the body across a surface;
a first set of sensors configured to sense an actuation characteristic of the actuator system;
a second set of sensors configured to sense a motion characteristic of the body, the first set of sensors being a different
type of sensor than the second set of sensors; and

a controller configured to:
estimate drift based at least on the actuation characteristic sensed by the first set of sensors and the motion characteristic
sensed by the second set of sensors;

determine from the estimated drift if the robotic device is on a carpeted or a non-carpeted surface;
in response to determination that robotic device is on a carpeted surface generate a carpet drift vector based at least on:
the actuation characteristic sensed by the first set of sensors and the motion characteristic sensed by the second set of
sensors; and

generate commands, using the carpet drift vector, configured to compensate for carpet drift;
send the generated commands to the actuator system to compensate for carpet drift.

US Pat. No. 9,179,813

SYSTEM AND METHOD FOR AUTONOMOUS MOPPING OF A FLOOR SURFACE

iRobot Corporation, Bedf...

1. A mobile robot configured to clean a space, the robot comprising:
a cleaning assembly;
a module configured to cause, at least in part, the robot to follow a cleaning trajectory comprising a sequence of paths repeated
a plurality times; and

a drive system configured to move the robot in accordance with the cleaning trajectory by:
moving the mobile robot along a first path a first distance forward, the first distance forward no more than double a width
of the cleaning assembly;

subsequent to moving the mobile robot along the first path, moving the mobile robot along a second path a second distance
backwards, the second distance less than the first distance.

US Pat. No. 9,089,977

COMPLIANT UNDERACTUATED GRASPER

iRobot Corporation, Bedf...

1. A grasper comprising:
a base;
a finger having a proximal end connected to the base by a proximal joint;
a tendon cable configured to move the finger relative to the base; and
a magnetic breakaway mechanism releasably coupling the finger to the base;
wherein:
the tendon cable extends through the magnetic breakaway mechanism and to the finger;
the magnetic breakaway mechanism includes:
a finger submount, wherein the finger is pivotably connected to the finger submount by the proximal joint; and
a base submount on the base;
wherein the finger submount and the base submount are magnetically attracted to one another and the finger submount is connected
to the base via the base submount;

the magnetic breakaway mechanism includes at least one locator feature to re-align the finger submount with the base submount
when the finger submount and the base submount are separated and re-joined; and

the at least one locator feature includes an annular or semi-annular groove.

US Pat. No. 9,807,930

BLADE GUARD FOR A ROBOT LAWNMOWER

iRobot Corporation, Bedf...

1. An autonomous robot lawnmower comprising:
a chassis;
a drive supporting the chassis above a lawn and configured to maneuver the robot lawnmower about the lawn;
a motorized lawn cutting assembly comprising one or more blades;
a first blade guard spring-mounted to a first lateral side of the robot lawnmower and extending toward the lawn, the first
blade guard being movable toward the one or more blades of the cutting assembly such that a portion of the first blade guard
is positioned between a first portion of the one or more blades of the cutting assembly and the lawn when an inwardly directed
force is applied to the first blade guard; and

a second blade guard spring-mounted to a second lateral side of the robot lawnmower and extending toward the lawn, the second
blade guard being movable toward the one or more blades of the cutting assembly such that a portion of the second blade guard
is positioned between a second portion of the one or more blades of the cutting assembly and the lawn when an inwardly directed
force is applied to the second blade guard.

US Pat. No. 9,505,140

CONTACT SENSORS FOR A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a body movable relative to a surface, the body comprising a first portion of a sensor; and
a bumper mounted on the body and movable relative to the body, the bumper comprising:
a backing movable relative to the body in response to a force applied to the bumper; and
a second portion of the sensor, the second portion of the sensor being attached to the backing and movable with the backing
relative to the first portion of the sensor in response to the force applied to the bumper,

wherein the sensor is configured to output an electrical signal in response to a movement of the backing, the electrical signal
being proportional to an amount of displacement of the second portion relative to the first portion.

US Pat. No. 9,468,349

ROBOT MANAGEMENT SYSTEMS FOR DETERMINING DOCKING STATION POSE INCLUDING MOBILE ROBOTS AND METHODS USING SAME

iRobot Corporation, Bedf...

1. A mobile robot system comprising:
a docking station configured to connect to a power supply, including:
at least two pose-defining fiducial markers positioned on opposing sides of a midline of the docking station, the at least
two pose-defining fiducial markers having a predetermined spatial relationship with respect to one another and/or to a reference
point on the docking station such that a docking path to the base station can be determined from one or more observations
of the at least two pose-defining fiducial markers; and

a docking port having one or more charging contacts;
a mobile cleaning robot including:
a chassis,
a motorized drive system connected to the chassis and having motorized tracks configured to move the mobile robot;
a floor cleaning system configured to clean a floor surface of the space as the robot transits through the space;
a wireless communication system having a wireless communication transmitter/receiver configured to communicate with a computer
network to send and receive information from a remote user terminal, the remote user terminal being configured to communicate
with and control the robot;

a mapping system configured to map a space and to determine a position of the robot relative to the space; and
a pose sensor assembly comprising a camera configured to output an output signal comprising image data;
a controller configured to analyze the image data from the pose sensor assembly, the controller having the predetermined spatial
relationship of the at least two pose-defining fiducial markers stored in a controller memory,

wherein the controller is configured to determine a docking station pose that is based on the spatial relationship of the
pose-defining fiducial markers and the signals from the pose sensor assembly, and to locate a docking station pose on a map
of the surface traversed by the mobile robot, wherein the docking station pose comprises a position defined by location coordinates
on the map, an angular orientation of the docking station on the map, and defines a docking lane on the map comprising outside
edges and a central axis that is aligned with a central axis of the docking port, and the controller is configured to store
the pose of the docking station on the map of the surface traversed by the mobile robot, and

the controller is further configured to path plan a docking trajectory including a path having a terminal portion aligned
with the central axis of the docking lane of the docking station, based on a current robot position on the map of the surface
and the docking station pose including the outside edges and the central axis of the docking lane and to provide instructions
to the motorized drive to move the mobile robot along the path of the docking trajectory and into the docking lane within
the outside edges and along the central axis of the docking lane of the docking station.

US Pat. No. 9,457,471

AUTONOMOUS MOBILE ROBOT

iRobot Corporation, Bedf...

1. An autonomous mobile robot comprising:
a robot body defining a forward drive direction;
a drive system supporting the robot body and configured to maneuver the robot over a floor surface;
a sensor system comprising wheel encoders and an inertial measurement unit for measuring a pose of the robot, the sensor system
issuing sensor signals indicative of the pose of the robot; and

a controller in communication with the drive system and the sensor system and having a computing processor executing a behavior
system, the behavior system receiving the sensor signals from the sensor system and executing an anti-stasis behavior comprising:

issuing a first wiggle drive command having a first wiggle angle, the first wiggle drive command directing the drive system
to drive with a first wiggle motion by driving in alternating left and right directions angled with respect to each other
by the first wiggle angle;

determining whether the robot exhibits the first wiggle motion by comparing sensor signals from the wheel encoders and/or
the internal measurement unit to a commanded rate of travel; and

when the robot fails to exhibit the first wiggle motion, issuing a second wiggle drive command having a corresponding second
wiggle angle to drive with a corresponding second wiggle motion, the second wiggle angle greater than the first wiggle angle.

US Pat. No. 9,457,473

SUSPENDED ROBOT SYSTEMS AND METHODS FOR USING SAME

iRobot Corporation, Bedf...

1. A garden tending robot system comprising:
at least one suspension cable;
an autonomous mobile garden tending robot suspended by the at least one suspension cable in a work space, wherein the garden
tending robot system is operative to selectively move the suspended mobile garden tending robot about the work space, the
mobile garden tending robot including a camera suspended by the at least one suspension cable to acquire image data from the
work space;

a shearing tool; and
a controller configured to:
use the image data from the camera to automatically determine a position of the mobile garden tending robot within the work
space;

direct the mobile garden tending robot to cut portions from plants in the work space using the shearing tool and collect the
portions from the work space; and

notify a user at a remote user terminal when plants in the work space are ready to harvest.

US Pat. No. 9,446,521

OBSTACLE FOLLOWING SENSOR SCHEME FOR A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a robot housing;
a drive system housed by the robot housing and configured to maneuver the robot with respect to an obstacle;
at least one sensor component housed in the robot housing and directed outwardly for detecting the presence of the obstacle,
the sensor component comprising:

an emitter that emits a directed signal having a defined field of emission; and
a detector having a defined field of view directed to intersect the field of emission of the emitter, the intersection of
the field of emission and the field of view defining a volume of intersection space laterally adjacent the robot housing;
and

a circuit in communication with the detector and the drive system for maneuvering the robot and the intersection space as
a function of the orientation of the robot with respect to the obstacle as determined by detection of the signal in the intersection
space.

US Pat. No. 9,346,426

COMPLIANT SOLID-STATE BUMPER FOR ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a robot chassis;
a bumper body disposed on the robot chassis; and
a membrane switch layer disposed on the bumper body and comprising:
a first conductive layer extending along the bumper body in a first direction, the first conductive layer including a plurality
of first conductive zones;

a second conductive layer extending along the bumper body in a second direction different from the first direction, the second
conductive layer including a plurality of second conductive zones, the plurality of second conductive zones arranged to overlap
the plurality of first conductive zones to form a two-directional matrix of overlapping first and second conductive zones
configured to allow identification of a location and/or region on the bumper body of a received pressure against the membrane
switch layer based on an electrical connection formed between at least one first conductive zone and at least one second conductive
zone; and

a separation layer disposed between the first and second conductive layers.

US Pat. No. 9,250,081

MANAGEMENT OF RESOURCES FOR SLAM IN LARGE ENVIRONMENTS

iRobot Corporation, Bedf...

11. An apparatus comprising:
a robot;
a controller of the robot configured to:
perform simultaneous localization and mapping (SLAM) for the robot in a first area with a first map;
perform SLAM for the robot in a second area with a second map, wherein the second map is maintained independently the first
map;

switch between performing SLAM with the first map or performing SLAM with the second map;
perform position estimation for the robot in a third area outside of the first area and the second area;
store information about which one of the first area or the second area the robot was in prior to entry to the third area;
estimate a position uncertainty of the robot while operating in the third area;
remember which one of the first area or the second area the robot was in prior to entry to the third area; and
if the position uncertainty is larger than a predetermined threshold, return the robot to the one of the first area or the
second area from which the robot was in prior to entry to the third area.

US Pat. No. 9,167,946

AUTONOMOUS FLOOR CLEANING ROBOT

iRobot Corporation, Bedf...

1. An autonomous floor-cleaning robot comprising:
a housing infrastructure including a chassis having forward and rearward ends;
a single removable collection cartridge carried by the chassis;
a motive subsystem drive assembly operative to propel the autonomous floor-cleaning robot forward for cleaning operations;
a control module operative to control the autonomous floor-cleaning robot to effect cleaning operations;
a brush assembly powered by the motive subsystem to that sweeps up particulates during cleaning operations;
a vacuum assembly powered by the motive subsystem that collects particulates during cleaning operations, the vacuum assembly
including a vacuum inlet rearward of the brush assembly, the vacuum inlet including a first compliant blade having a generally
rectangular configuration and a lateral dimension that defines a predetermined width of the vacuum inlet, wherein the first
compliant blade extends beyond a lateral dimension of the brush assembly and is positioned to graze a surface to be cleaned;
and

a replaceable filter retained in a chamber of the cartridge;
wherein both the brush assembly sweeps and the vacuum inlet collects particles into the single removable cartridge;
wherein the collection cartridge comprises a curved arcuate sidewall substantially continuing with an external sidewall of
the housing infrastructure, the housing infrastructure having a structural envelope defining a generally cylindrical shape
generally symmetrical along a forward portion of the housing infrastructure.

US Pat. No. 9,149,170

NAVIGATING AUTONOMOUS COVERAGE ROBOTS

iRobot Corporation, Bedf...

1. A robot comprising:
a chassis;
a wheeled drive supporting the chassis and operable to maneuver the robot;
sensors responsive to an environment about the robot;
a memory storing:
instructions configured as a set of routines to cause the wheeled drive to move the robot according to a predetermined sequence
based on enabling conditions that must be satisfied, the set of routines comprising a plurality of working routines and a
plurality of escape routines, wherein each routine of the set is assigned a priority and one or more enabling conditions,
and

instructions to enable control of the wheeled drive according to the assigned priorities and enabling conditions, the instructions
configured to control the wheeled drive according to a highest priority routine of the set for which all assigned enabling
conditions have been satisfied; and

a controller in communication with the wheeled drive, the sensors, and the memory, the controller executing the instructions
to:

identify, from among the set of routines, a subset of routines for which all assigned enabling conditions have been satisfied,
the subset of routines comprising one or more working routines and one or more escape routines;

select, from among the identified subset of routines, an escape routine having the highest priority of the subset of routines;
and

control the wheeled drive according to the selected escape routine.

US Pat. No. 9,796,078

COMPANION ROBOT FOR PERSONAL INTERACTION

iRobot Corporation, Bedf...

1. A mobile robot comprising:
a robot body;
a drive system having one or more wheels supporting the robot body to maneuver the robot across a floor surface;
a riser having a proximal end and a distal end, the proximal end disposed on the robot body; and
a head disposed on the distal end of the riser, the head comprising:
a display;
a teleconferencing camera disposed adjacent the display; and
a navigation camera separate from the teleconferencing camera; and
a controller in communication with the drive system, the display, the teleconferencing camera, and the navigation camera,
the controller configured to command the drive system to navigate the robot to a target location using image data received
from the navigation camera and initiate a video teleconferencing session at the target location.

US Pat. No. 9,529,363

CELESTIAL NAVIGATION SYSTEM FOR AN AUTONOMOUS VEHICLE

iRobot Corporation, Bedf...

1. An autonomous robotic cleaning device comprising:
a robot body;
a drive supporting the robot body above a floor surface within a room and configured to maneuver the robot body across the
floor surface;

a cleaning apparatus to clean the floor surface;
an upward-angled camera positioned on a top of the robot body and directed at least partially away from a ceiling of the room
to capture visible points on wall surfaces within the room; and

a processor configured to
navigate the autonomous robotic cleaning device about the room based on a location of the autonomous robotic cleaning device
relative to the points,

create a map of the room using the points while navigating the autonomous robotic cleaning device about the room to perform
a cleaning operation, and

transmit data indicating how much of the cleaning operation has been completed, the data comprising data to cause a user display
device to display a floor plan of the room indicating portions of the floor surface that the autonomous robotic cleaning device
has traversed and portions of the floor surface that the autonomous robotic cleaning device has not traversed.

US Pat. No. 9,427,876

INFLATABLE ROBOTS, ROBOTIC COMPONENTS AND ASSEMBLIES AND METHODS INCLUDING SAME

iRobot Corporation, Bedf...

1. An inflatable robotic assembly comprising:
a support member;
an end effector mounted on an end of the support member, the end effector including first and second inflatable finger members
connected to enable the first and second fingers to be moved selectively between an open position and a closed position; and

an actuator configured to move the fingers between the open and closed positions;
wherein:
the first finger includes first and second, relatively moveable, inflatable phalanges each having a proximal end;
the first and second phalanges are arranged serially and are pivotally coupled to one another at their respective proximal
ends by a pivot joint;

the first and second phalanges each include an inner structural membrane and an outer structural membrane surrounding the
inner structural membrane;

each of the inner structural membranes contains a compressed gas;
each of the outer structural membranes restricts radial expansion of the inner structural membrane to provide a dual-layer
tensegrity structure;

each of the outer structural membranes is formed of a textile; and
the inflatable robotic assembly is configured such that the first and second fingers, including the first and second phalanges
of the first finger, are each compliant when inflated and can be deflated into a compacted position for storage and/or transport.

US Pat. No. 9,360,300

METHODS AND APPARATUS FOR POSITION ESTIMATION USING REFLECTED LIGHT SOURCES

iRobot Corporation, Bedf...

1. A robot comprising:
a drive system comprising a plurality of wheels;
an optical position sensor; and
a control system configured to perform operations comprising:
estimating a position of the robot using the optical position sensor and wheel odometry data for the plurality of wheels;
tracking a history of a plurality of paths taken by the robot using a plurality of estimated positions; and
detecting a light projected by a handheld device and guiding the robot to a location based on the light projected by the handheld
device.

US Pat. No. 9,229,454

AUTONOMOUS MOBILE ROBOT SYSTEM

iRobot Corporation, Bedf...

15. An autonomous mobile robot system comprising:
a transmitter comprising an emitter arranged to direct a signal into a first working area; and
an autonomous coverage robot comprising:
a receiving subsystem responsive to the directed signal of the emitter; and
a drive system configured to
maneuver the robot in a cleaning mode in which the robot continues to execute a first cleaning behavior within the first working
area in response to detection of the directed signal by the receiving subsystem; and to

maneuver the robot in a migration mode in which the robot moves toward the transmitter in response to detection of the directed
signal, so as to pass from the first working area through a doorway into a second working area.

US Pat. No. 9,785,149

TIME-DEPENDENT NAVIGATION OF TELEPRESENCE ROBOTS

INTOUCH TECHNOLOGIES, INC...

1. A telepresence robot, comprising:
a drive system configured to move the telepresence robot according to drive instructions;
a control system in communication with the drive system, the control system configured to generate the drive instructions
to cause the drive system to move the telepresence robot along a navigation path;

a mapping module in communication with the control system, the mapping module configured to access a map data source, the
map data source including:

a robot map representative of a robot operating surface; and
one or more time-dependent navigation tags, each time-dependent navigation tag being a data structure comprising:
spatial coordinates locatable relative to the robot map and associated with the robot operating surface; and
tag information comprising a time-dependent robot action modifier;
a positioning system in communication with the control system configured to provide positioning information associated with
a current position;

a tag identification system configured to identify at least one time-dependent navigation tag that includes a time-dependent
robot action modifier associated with the navigation path of the telepresence robot; and

a navigation system configured to generate the navigation path, the navigation path comprising a sequence of coordinates from
the current position on the robot map to a desired position on the robot map,

wherein the navigation system is configured to be triggered by an identified time-dependent navigation tag and associated
time-dependent robot action modifier to plan the navigation path based, at least in part, on the time-dependent robot action
modifier associated with the identified time-dependent navigation tag.

US Pat. No. 9,599,990

ROBOT SYSTEM

iRobot Corporation, Bedf...

1. A mobile cleaning robot comprising:
a drive system to move the robot on a floor surface;
a cleaning unit to clean the floor surface;
an audio output device to emit audible content;
a microphone to detect sound;
a camera;
a wireless communicator; and
a controller operable with the wireless communicator to communicate with a remote device, the controller being configured
to access audio data and cause the audio output device to emit audible content corresponding to the audio data, and to control
an operation of the robot corresponding to the sound detected by the microphone.

US Pat. No. 9,519,289

SYSTEMS AND METHODS FOR PERFORMING SIMULTANEOUS LOCALIZATION AND MAPPING USING MACHINE VISION SYSTEMS

iRobot Corporation, Bedf...

1. A mobile robot configured to navigate an operating environment, comprising:
a body having a top surface;
a drive mounted to the body;
a recessed structure beneath the plane of the top surface near a geometric center of the body;
a controller circuit in communication with the drive, wherein the controller circuit directs the drive to navigate the mobile
robot through an environment using camera-based navigation system; and

a camera including optics defining a camera field of view and a camera optical axis, wherein:
the camera is positioned within the recessed structure and is tilted so that the camera optical axis is aligned at an acute
angle of 30-40 degrees above a horizontal plane in line with the top surface and is aimed in a forward drive direction of
the robot body,

the field of view of the camera spans a frustum of 45-65 degrees in the vertical direction, and
the camera is configured to capture images of the operating environment of the mobile robot.

US Pat. No. 9,492,048

REMOVING DEBRIS FROM CLEANING ROBOTS

iRobot Corporation, Bedf...

1. A robotic cleaner maintenance station, comprising:
a station housing and a platform configured to support a robotic cleaner during servicing, the station housing defining an
evacuation passageway exposed to the robotic cleaner, for evacuating debris from the robotic cleaner during servicing;

a collection bin removably attached to the station housing, the collection bin being in pneumatic communication with the evacuation
passageway and configured to be disengaged from the station housing in a vertical direction relative to the station housing;

a filter arranged to filter air passing from the collection bin to outside the maintenance station; and
an air mover configured to draw air from the evacuation passageway and into the collection bin to evacuate a robotic cleaner
supported on the platform, wherein the air mover comprises a bagless cyclonic vacuum configured to divert debris from an incoming
flow using centripetal acceleration of the debris.

US Pat. No. 9,462,920

EVACUATION STATION

iRobot Corporation, Bedf...

1. An evacuation station comprising:
a control system comprising one or more processing devices programmed to control evacuation of a debris bin of a mobile robot;
a base to receive the mobile robot, the base comprising an intake port to align to an exhaust port of the debris bin;
a canister to hold a bag to store debris from the debris bin;
one or more conduits extending from the intake port to the bag, through which debris is transported between the intake port
and the bag;

a motor that is responsive to commands from the control system to remove air from the canister and thereby generate negative
air pressure in the canister to evacuate the debris bin by suctioning the debris from the debris bin; and

a pressure sensor to monitor the air pressure;
wherein the control system is programmed to control an amount of time to evacuate the debris bin based on the air pressure
monitored by the pressure sensor.

US Pat. No. 9,445,702

AUTONOMOUS SURFACE CLEANING ROBOT FOR WET AND DRY CLEANING

iRobot Corporation, Bedf...

1. A surface treatment robot, comprising:
a differential drive system mounted on the robot and configured to maneuver the robot over a cleaning surface, the differential
drive having at least two circulating drive members that drive the robot forward and steer the robot;

a controller in communication with the differential drive system and configured to differentially steer the robot and to maneuver
the robot to pivot in place;

a robot body having a maximum width along a line perpendicular to a direction of forward travel and a side edge along the
line of maximum width;

a cleaning head forward of the circulating drive members in the direction of forward travel and extending substantially along
the line of maximum width to the side edge;

a driven scrubbing element extending to substantially within 1 cm of the side edge along the line of maximum width; and
a cleaning width defined by the driven scrubbing element with reference to a total robot mass, the cleaning width being more
than or equal to three centimeters of cleaning width per kilogram of total robot mass.

US Pat. No. 9,188,983

METHODS AND SYSTEMS FOR COMPLETE COVERAGE OF A SURFACE BY AN AUTONOMOUS ROBOT

iROBOT CORPORATION, Bedf...

1. A mobile robot, comprising:
a motorized drive and a drive circuit connected thereto to move the mobile robot among robot poses on a surface;
an edge sensor configured to detect edges of obstacles on a surface traversed by the mobile robot;
a localizing sensor configured to detect robot pose on the surface traversed by the mobile robot;
a memory circuit that stores a map of the surface, wherein the map is expanded by adding explored locations, unexplored locations,
and edge locations to the stored map according to the localizing sensor and the edge sensor, wherein a frontier indicates
a boundary between an explored location and an unexplored location, and an edge indicates a boundary between an explored location
and an occupied location;

a region-covering routine that provides drive circuit instructions to follow a path tactic pattern to expand the map relative
to one or more frontiers,

an edge-tracing routine that provides drive circuit instructions to trace along detected edges of obstacles, wherein the edge-tracing
routine begins at edge locations discovered during the region-covering routine and extends tracing when new edges of obstacles
are detected in real time by the edge sensor and expands the map with new frontiers discovered as the mobile robot moves along
edges in the course of edge-tracing; and

a control circuit configured to monitor the edge sensor and localizing sensor, execute drive circuit instructions to move
the mobile robot, and expand the map by:

executing the region-covering routine to expand the map outward from a non-edge origin location until no additional frontiers
are discovered by alternately applying the path tactic pattern in at least two different directions of region discovery;

executing the edge-tracing routine to trace detected edges of obstacles; and
returning to the region-covering routine after new frontiers are discovered during an edge-tracing routine.

US Pat. No. 9,128,486

NAVIGATIONAL CONTROL SYSTEM FOR A ROBOTIC DEVICE

iRobot Corporation, Bedf...

1. A robotic system comprising:
a set of positionable emitting units including a first emitting unit adjacent to an interior wall of a room and a second emitting
unit adjacent an interior doorway of the room and configured to emit a beam;

a robot for movement within a defined interior working area of the room, wherein the defined interior working area is bounded
in part by the interior wall;

a first transmit-receive system for transmitting from the robot to the set of positionable emitting units, the first transmit-receive
system including:

a transmitting subsystem on the robot comprising an infrared (IR) beam emitter configured to emit a number of directed IR
beams in a substantially planar manner about the robot into the defined working area, each directed IR beam having a predetermined
emission pattern; and

a receiving subsystem on the first emitting unit and configured to detect the directed IR beams; and
a second transmit-receive system for transmitting from the set of positionable emitting units to the robot, the second transmit-receive
system including:

a transmitter disposed in the first emitting unit and configured to transmit a control signal; and
an omnidirectional detector on the robot configured to receive the control signal and to detect the beam emitted by the second
emitting unit;

wherein the set of positionable emitting units includes a processor and a navigation control algorithm, and wherein the navigation
control algorithm defines a predetermined triggering event for the robot and the predetermined triggering event is caused
by the receiving subsystem on the first emitting unit receiving one or more of the directed IR beams from the robot, wherein
the processor is configured to execute the navigation control algorithm by transmitting the control signal to the robot in
response to determining that the predetermined triggering event has occurred; and

wherein the robot is configured to receive the control signal from the set of positionable emitting units using the omnidirectional
detector and, in response to receiving the control signal and detecting the beam emitted by the second emitting unit adjacent
to the interior doorway, implement a triggered prescribed conduct that alters the movement activity of the robot by restricting
the robot to one or more operations within the defined working area.

US Pat. No. 9,854,737

ROBOTIC LAWN MOWING BOUNDARY DETERMINATION

iRobot Corporation, Bedf...

1. A method of mowing an area with a mowing robot, the method comprising:
storing, in a memory of the mowing robot, a set of geospatially referenced perimeter coordinates corresponding to positions
of the mowing robot while being guided about a perimeter of the area to be mowed along a teaching path during a teaching mode;

identifying a boundary path comprising an alternative set of geospatially referenced perimeter coordinates comprising at least
some of the set of the geospatially referenced perimeter coordinates stored during the teaching mode and at least some alternative
coordinates other than the set of geospatially referenced perimeter coordinates stored during the teaching mode; and

controlling the mowing robot to autonomously mow along the boundary path.

US Pat. No. 9,565,984

AUTONOMOUS FLOOR CLEANING WITH REMOVABLE PAD

iRobot Corporation, Bedf...

1. An autonomous floor cleaning robot, including:
a robot body;
a drive supporting the robot body to maneuver the robot across a floor surface;
a pad holder attached to an underside of the robot body and configured to receive a removable cleaning pad, the pad holder
including protrusions engageable with cutouts on edges of a mounting plate of the cleaning pad; and

a pad sensor to sense first and second pad type identifiers on the cleaning pad, the pad sensor being positioned to detect
the first pad type identifier when the pad holder receives the cleaning pad in a first orientation and to detect the second
pad type identifier when the pad holder receives the cleaning pad in a second orientation.

US Pat. No. 9,510,505

AUTONOMOUS ROBOT LOCALIZATION

iRobot Corporation, Bedf...

1. A location estimation system for use with an autonomous lawn mowing robot, the system comprising:
a plurality of synthetic surfaces positioned with respect to a mowable space in an environment;
a radiation source coupled to the lawn mowing robot;
a detector coupled to the lawn mowing robot and configured to detect radiation reflected by objects in the environment; and
a controller configured to controllably direct radiation from the radiation source to scan the environment and vary a scan
rate of the directed radiation as a function of detected radiation reflected from one or more of the synthetic surfaces;

wherein the controller is further configured to direct the radiation source to make a first scan of the environment at a first
scan rate and wherein a modulator coupled to the radiation source and configured to modulate radiation emitted from the radiation
source is configured to direct the radiation source to make a second scan of the environment, a limited portion of the second
scan performed at a second scan rate different from the first scan rate.

US Pat. No. 9,513,634

SYSTEM AND METHOD FOR BEHAVIOR BASED CONTROL OF AN AUTONOMOUS VEHICLE

iRobot Corporation, Bedf...

9. A system for behavior based control of an autonomous vehicle, the system comprising:
at least one input device in the autonomous vehicle;
at least one actuator associated with the at least one input device;
a plurality of behaviors associated with the at least one actuator;
at least one action set, each action set characterized at least in part by a priority and comprising a plurality of alternative
actions ranked according to a corresponding plurality of preferences;

at least one arbiter associated with the at least one actuator for selecting at least one of (i) the action set having the
highest corresponding priority, and (ii) the alternative action from the selected action set, the alternative action having
the highest corresponding preference; and

a controller in communication with the input device and arbiter for operating the at least one input device in accordance
with the selected alternative action;

wherein each of the behaviors comprises at least one of (i) the at least one action set, and (ii) a modification to at least
a portion of the selected action set.

US Pat. No. 9,167,947

SYSTEM AND METHOD FOR AUTONOMOUS MOPPING OF A FLOOR SURFACE

iRobot Corporation, Bedf...

1. A method of cleaning a space with a mobile robot, the method comprising:
driving, by a motion controller system, the mobile robot along a first arcuate path by a first distance forward and a third
distance to the left,

subsequent to driving the mobile robot along the first arcuate path, driving the mobile robot, by the motion controller system,
along a second arcuate path by a second distance backward and by the third distance to the right, the first distance being
greater than the second distance;

subsequent to driving the mobile robot along the second arcuate path, driving, by the motion controller system, the mobile
robot along a third arcuate path by the first distance forward and a fourth distance to the right; and

subsequent to driving the mobile robot along the third arcuate path, driving, by the motion controller system, the mobile
robot along a fourth arcuate path by the second distance backward and the fourth distance to the left;

repeating driving the mobile robot along the first, second, third, and fourth paths in sequential order.

US Pat. No. 10,061,896

GRAPHICAL USER INTERFACES INCLUDING TOUCHPAD DRIVING INTERFACES FOR TELEMEDICINE DEVICES

INTOUCH TECHNOLOGIES, INC...

1. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, are configured to cause the processor to perform operations comprising:communicatively connecting an electronic device to a remote presence device;
selectively displaying a live video feed from a camera of the remote presence device in a video panel on an electronic display of the electronic device;
receiving a navigation input that forms at least part of an intended navigation path of the remote presence device, wherein receiving a navigation input comprises:
overlaying a vector graphically represented as a line or arrow on the live video feed, wherein the vector has beginning point and an end point, the beginning point representing a current location of the remote telepresence device within the live video feed;
allowing an operator to move the end point of the vector with respect to the live video feed while the remote telepresence device is in motion, wherein a horizontal component of the vector is used to determine a magnitude and direction of a rotational velocity and/or an angular displacement of the remote telepresence device, and wherein a vertical component of the vector is used to determine a magnitude of a forward velocity and/or a forward displacement of the remote telepresence device;
displaying at least a portion of the intended navigation path of the remote presence device overlaid on the live video feed, wherein the displayed intended navigation path includes the vector;
transforming the navigation input into navigation instructions that are interpretable by the remote presence device;
transmitting the navigation instructions associated with the navigation input to the remote presence device;
updating the live video feed as the remote presence device moves in accordance with the navigation instructions.

US Pat. No. 10,045,676

REMOTE CONTROL SCHEDULER AND METHOD FOR AUTONOMOUS ROBOTIC DEVICE

iRobot Corporation, Bedf...

1. A method of cleaning a room using a robotic cleaning device, the method comprising:autonomously navigating the robotic cleaning device having a battery about a floor surface of the room;
transmitting a power level report from the robotic cleaning device to a mobile device;
automatically returning the robotic cleaning device to a docking station based on a power level of the robotic cleaning device;
transmitting a mission status report from the robotic cleaning device to the mobile device; and
transmitting from the robotic cleaning device an error report indicative of an error of at least one of a filter or a brush of the robotic cleaning device.

US Pat. No. 9,802,322

MOBILE ROBOT PROVIDING ENVIRONMENTAL MAPPING FOR HOUSEHOLD ENVIRONMENTAL CONTROL

iRobot Corporation, Bedf...

1. A mobile robot, comprising:
a processor connected to a memory and a wireless network circuit, for executing routines stored in the memory and commands
generated by the routines and received via the wireless network circuit;

driven wheels commandable by the processor to reach a multiplicity of accessible two dimensional locations within a household;
and

a localizing circuit;
the processor executing a plurality of routines including:
a navigation routine which commands the driven wheels to move the robot about the household,
a surface mapping routine that accumulates observations from the localizing circuit to record a two dimensional array representing
accessible two dimensional locations of the mobile robot;

a mission time estimate routine that accumulates timed readings from the localizing circuit and determines at least one estimated
completion time span for the mobile robot to substantially cover a surface area corresponding to a contiguous set of possible
locations within the two dimensional array; and

a mission pre-planning routine that compares a target completion time to the at least one estimated completion time span,
and commands the driven wheels to begin covering the surface area sufficiently in advance of the target completion time for
the at least one estimated completion time to pass, so that the surface area is substantially covered before the target completion
time.

US Pat. No. 9,744,677

ROBOTIC FINGERS AND END EFFECTORS INCLUDING SAME

iRobot Corporation, Bedf...

1. A robotic end effector comprising:
a finger extending from a proximal end to a distal end along a finger axis, the finger comprising:
a first phalanx proximate the proximal end;
a second phalanx proximate the distal end;
a knuckle joint including at least one vertebra interposed between and separating the first and second phalanxes, wherein:
the knuckle joint is configured to permit the second phalanx to pivot relative to the first phalanx about a pivot axis transverse
to the finger axis; and

each vertebra has an axial thickness extending along the finger axis and a lateral width extending perpendicular to its axial
thickness, and its lateral width is greater than its axial thickness;

at least one actuator to move the second phalanx relative to the first phalanx about the pivot axis; and
a tendon cable associated with the at least one actuator for moving the second phalanx relative to the first phalanx about
the pivot axis;

wherein the tendon cable extends through the at least one vertebra and applies an axially compressive load to the first phalanx,
the second phalanx and the at least one vertebra to hold the first phalanx, the second phalanx and the at least one vertebra
together and in contact with one another.

US Pat. No. 9,408,515

AUTONOMOUS COVERAGE ROBOT

iRobot Corporation, Bedf...

1. A mobile floor cleaning robot comprising:
a robot body defining a forward drive direction;
a drive system supporting the robot body and configured to maneuver the robot over a floor surface;
a cleaning system disposed on the robot body;
an imaging sensor disposed on the robot body; and
a controller in communication with the drive system and the imaging sensor, the controller configured to:
receive a sequence of images of the floor surface, each image having an array of pixels;
for at least one image, segmenting the image into color segments by:
color quantizing pixels of the image; and
determining a spatial distribution of at least one color of the image based on corresponding pixel locations; and
tracking a location of at least one color segment with respect to the imaging sensor across the sequence of images for determining
a drive command for issuance to the drive system to maneuver the mobile floor cleaning robot.

US Pat. No. 10,070,764

COMPACT AUTONOMOUS COVERAGE ROBOT

iRobot Corporation, Bedf...

1. An autonomous coverage robot comprising:a chassis having a forward portion and a rearward portion;
a drive system for maneuvering the autonomous coverage robot over a cleaning surface, the drive system comprising drive wheels;
a cleaning assembly for agitating debris on the cleaning surface;
a bin that receives debris agitated by the cleaning assembly;
a pivotally attached bin cover configured to rotate between a first, closed position providing closure of a bin opening and a second, open position providing access to the bin opening, the pivotally attached bin cover comprising a bottom portion of the bin that swings open about a hinge;
a bin cover latch configured to lock the bin cover in the first, closed position and to disengage to allow the bin cover to move to the second, open position; and
a bin cover release for actuating the bin cover latch, the bin cover release allowing actuation of the bin cover latch while holding a handle positioned on the upper portion of the autonomous coverage robot.

US Pat. No. 9,826,678

ROBOTIC MOWING OF SEPARATED LAWN AREAS

iRobot Corporation, Bedf...

1. A method of mowing multiple areas, the method comprising:
training an autonomous lawnmowing robot to mow the multiple areas by generating data indicative of a first boundary of a first
of the multiple areas and a second boundary of a second of the multiple areas;

training the robot to traverse the first of the multiple areas by generating data indicative of a user-selected route through
the first of the multiple areas;

transmitting the data indicative of the route and the data indicative of the first boundary and the second boundary to a mobile
computing device to present a representation of the first boundary, the second boundary, and the route on a display of the
mobile computing device; and

initiating a mowing operation in which the robot autonomously
disables a mowing function,
subsequent to disabling the mowing function, travels to the second of the multiple areas by following the route without mowing
the first of the multiple areas, and

subsequent to traveling to the second of the multiple areas, activates the mowing function to mow the second of the multiple
areas.

US Pat. No. 9,801,518

SYSTEM AND METHOD FOR AUTONOMOUS MOPPING OF A FLOOR SURFACE

iRobot Corporation, Bedf...

1. An autonomous cleaning robot comprising:
a housing;
a drive to move the housing across a surface;
a dispenser to apply fluid to the surface;
a cleaning assembly configured to attach a detachable cleaning pad to a bottom surface of the autonomous cleaning robot; and
a controller to operate the drive to move the autonomous cleaning robot along a room coverage cleaning trajectory to traverse
the surface to be cleaned in two or more parallel straight paths and to move along a local scrub cleaning trajectory in which
the autonomous cleaning robot repeatedly moves forward along a first path and backward along a second path such that the cleaning
assembly pivots relative to the housing, the local scrub cleaning trajectory having a forward travel distance that exceeds
a backward travel distance.

US Pat. No. 9,630,319

LOCALIZATION AND MAPPING USING PHYSICAL FEATURES

iRobot Corporation, Bedf...

1. A method of navigating an autonomous robot within an area at least partially enclosed by walls, the method comprising:
maneuvering the robot in a following mode in which the robot is controlled to travel along a plurality of path segments adjacent
an obstacle, while

generating data indicative of a physical layout of the area including area boundaries and obstacle perimeters detected while
maneuvering the robot in the following mode, and

recording data indicative of the plurality of path segments, the data being indicative of locations of the plurality of path
segments relative to the physical layout of the area;

maneuvering the robot in a coverage mode in which the robot is controlled to traverse the area while performing a function,
while

updating data indicative of a robot pose relative to the physical layout of the area based at least on robot odometry data,
the robot pose comprising a calculated location and orientation of the robot within the area, and

calculating a robot pose confidence level; and
in response to the robot pose confidence level being below a predetermined confidence limit:
selecting a trajectory of the robot to approach a suspected location of a path segment of the plurality of path segments based
on the data indicative of the locations of the plurality of path segments and the data indicative of the robot pose;

maneuvering the robot along the selected trajectory toward the suspected location of the path segment; and then,
in response to detecting the path segment within a predetermined distance from the suspected location of the path segment,
updating at least one of the data indicative of the robot pose and the data indicative of the physical layout of the area,
thereby updating the calculated location and orientation of the robot within the area.

US Pat. No. 9,622,635

AUTONOMOUS FLOOR-CLEANING ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a robot housing having a forward portion;
a motor drive housed in the robot housing and configured to maneuver the robot on a floor surface;
at least two independently driven drive wheels moveably attached to the robot housing and biased toward the floor surface,
each of the drive wheels being independently moveable downwardly;

a plurality of cliff sensors disposed forward of the wheels and spaced from each other, each cliff sensor comprising an emitter
positioned to direct emissions toward a floor surface and a detector configured to receive emitter emissions reflected off
of the floor surface, each cliff sensor responsive to a cliff in the floor surface and configured to send a signal when a
cliff in the floor surface is detected;

at least one side brush driven about a nonhorizontal axis and comprising at least one brush arm having a plurality of bristles,
at least a portion of the at least one side brush extending beyond a peripheral edge of the robot housing, and at least a
portion of the at least one brush arm periodically intersecting a path between at least one of the plurality of cliff sensors
and the floor surface; and

a controller in communication with the plurality of cliff sensors and the motor drive, configured to redirect movement of
the robot when a cliff in the floor surface is detected.

US Pat. No. 9,554,508

AUTONOMOUS MOBILE ROBOT

iRobot Corporation, Bedf...

1. A robot lawnmower comprising:
a robot body;
a drive system supporting the robot body and configured to maneuver the robot lawnmower over a lawn;
a localizing system configured to determine perimeter positions of the robot lawnmower with respect to an origin;
a teach monitor in communication with the localizing system and configured to determine whether the robot lawnmower is in
a teachable state or in an unteachable state, the robot lawnmower being in the teachable state when the robot lawnmower is
localized and on traversable terrain;

a controller in communication with the drive system, the localizing system, and the teach monitor, the controller comprising:
a data processing device; and
non-transitory memory in communication with the data processing device;
wherein the controller is configured to execute a teach routine when the controller is in a teach mode for tracing a confinement
perimeter around the lawn as a human operator pilots the robot lawnmower with the robot lawnmower in the teachable state,
wherein the teach routine stores perimeter positions determined by the localizing system in the non-transitory memory, and
wherein the teach monitor of the robot lawnmower determines whether the robot lawnmower is in the teachable state or the unteachable
state; and

an operator feedback unit in communication with the teach monitor or the controller and configured to emit an unteachable
state indication when the teach monitor determines the robot lawnmower is in the unteachable state, the unteachable state
indication configured to alert the human operator to the unteachable state and to further indicate a piloting correction of
the robot lawnmower to return the robot lawnmower to the teachable state.

US Pat. No. 9,538,702

ROBOTIC MOWING OF SEPARATED LAWN AREAS

iRobot Corporation, Bedf...

1. A method of mowing at least two areas separated by a space, the method comprising:
training a robotic mower to mow at least a first area and a second area, the first area separated from the second area by
the space, including moving the robotic mower about the first and second areas while storing data indicative of a location
of boundaries of each area relative to boundary markers;

storing data indicative of a traversal route between the first area and the second area;
storing data indicative of a bypass route that provides a path for the robotic mower to follow to traverse the first area;
and then

initiating a mowing operation causing the robotic mower to autonomously and in sequence:
disable a mowing function;
traverse the first area by following the bypass route without mowing the first area;
move from the first area to the second area across the space separating the first area from the second area by following the
traversal route between the first area and the second area without mowing the traversal route;

activate the mowing function; and
mow the second area.

US Pat. No. 9,534,899

RE-LOCALIZATION OF A ROBOT FOR SLAM

iRobot Corporation, Bedf...

1. A method of estimating a pose of a robot, the method comprising:
computing the pose of the robot through simultaneous localization and mapping as the robot moves along a surface to generate
one or more maps, wherein the pose comprises position and orientation of the robot;

navigating the robot such that the robot cleans the surface in a methodical manner;
determining that navigation of the robot has been paused by a user-initiated pausing event, and after resuming navigation
of the robot:

re-localizing the robot within a map of the one or more maps;
after re-localizing, returning the robot to a previous pose prior to resuming cleaning, wherein the previous prior pose is
from a time prior to the user-initiated pausing event, wherein the prior pose comprises a prior position and a prior orientation;
and

resuming cleaning of the surface in the methodical manner.

US Pat. No. 9,098,080

SYSTEMS AND METHODS FOR SWITCHING BETWEEN AUTONOMOUS AND MANUAL OPERATION OF A VEHICLE

iRobot Corporation, Bedf...

1. A robotic control system for operating a robotically operable vehicle comprising:
a plurality of operation systems that is automatically controllable when the vehicle is operated in an autonomous mode, the
plurality of operation systems including:

a steering system for controlling a direction of movement of the vehicle;
a braking system for controlling braking of the vehicle,
a throttle system for controlling a speed of the vehicle; and
a transmission system for selecting a gear for the vehicle;
an electrically controlled actuator configured for, in accordance with control signals generated by an autonomous control
system, operating an operation system of the plurality of operation systems;

a mechanical linkage configured for controlling an operation system of the plurality of operation systems corresponding to
the mechanical linkage according to remote commands received from a remote operation member; and

a plurality of electrically actuated clutches configured for causing the vehicle to operate in the autonomous mode by powering
on and allowing the plurality of operation systems to receive control signals from an autonomous control system, and for allowing
the vehicle to operate in a manual mode by powering off, wherein the electrically controlled actuator is mated to at least
one of the plurality of operation systems by at least one electrically actuated clutch, and wherein the robotic control system
is configured to switch from the autonomous mode to the manual mode upon verifying that a human is controlling the robotically
operable vehicle by: (i) receiving, from a sensor, a sensor signal that indicates that the human is in a driver's seat in
the robotically operable vehicle, and (ii) detecting, using an algorithm executing on a processor, a pattern of controlling
a plurality of controls of the robotically operable vehicle in a manner that is indicative of an exercise of human judgment.

US Pat. No. 10,088,845

SYSTEM AND METHOD FOR BEHAVIOR BASED CONTROL OF AN AUTONOMOUS VEHICLE

iRobot Corporation, Bedf...

15. A vehicle capable of manned operation, the vehicle comprising:(a) a first subsystem, comprising:
a computing medium having computer readable code embodied therein for selectively controlling the vehicle, the computer readable code comprising:
(i) code for causing the vehicle to be autonomously controlled without operator intervention; and
(ii) code for enabling autonomous operation of a first vehicle input device in combination with operator control of a second vehicle input device; and
(b) a second subsystem in electrical communication with the first subsystem, the second subsystem comprising:
a plurality of actuators for manipulating one or more devices of the vehicle; and
a controller for controlling at least one actuator in response to an instruction received from the computing medium, and for storing a location of one or more terrain features in a terrain feature map,
wherein the controller, in response to an instruction generated by the code for enabling autonomous operation of the first vehicle input device in combination with operator control of the second vehicle input device, autonomously controls a first set of at least one actuator based on the one or more terrain features in the terrain feature map and contemporaneously controls a second set of at least one actuator in accordance with operator input, wherein at least one actuator of the plurality of actuators is coupled to the first vehicle input device by a mechanical linkage or a mechanical transmission, wherein the controller is configured to detect a disassociation between the first vehicle input device and an associated one of the plurality of actuator and to interrupt autonomous control in response to the disassociation, and the disassociation comprises a break in the mechanical linkage or mechanical transmission that couples the at least one actuator of the plurality of actuators to the first vehicle input device.

US Pat. No. 9,969,089

CARPET DRIFT ESTIMATION USING DIFFERENTIAL SENSORS FOR VISUAL MEASUREMENTS

iRobot Corporation, Bedf...

1. A robotic device, comprising:a plurality of sensors comprising imaging, gyroscopic, and/or odometry sensors;
an actuator system configured to move the robotic device across a surface; and
a controller coupled to the sensors and the actuator system, wherein the controller is configured to:
generate a drive signal to control the actuator system to perform a maneuver having a desired trajectory, wherein the desired trajectory comprises a substantially straight path;
receive data indicative of a motion characteristic from one or more of the sensors during movement in the desired trajectory, wherein the motion characteristic comprises a path angle of the robotic device;
determine whether the surface is carpeted based on an estimate of drift, wherein the estimate is based on data from the odometry and imaging sensors;
generate a control signal to control the actuator system to compensate for the drift based on the motion characteristic, wherein the drift comprises accumulated effects of carpet grain on the desired trajectory; and
send the control signal to the actuator system.

US Pat. No. 9,919,425

ROBOT NAVIGATIONAL SENSOR SYSTEM

iRobot Corporation, Bedf...

1. An autonomous robot comprising:
a robot body defining a forward drive direction, the robot body having a bottom surface and a top surface located at a robot
height above a floor surface;

a drive configured to propel the autonomous robot over a floor surface;
a sensor system disposed on a front portion of the robot body; and
a navigation controller circuit in communication with the drive and the sensor system, the controller circuit configured to
process a signal received from the sensor system and to control the drive as a function of the signal received for processing;

wherein the sensor system comprises at least one proximity sensor comprising:
a sensor body, and
a first emitter, a second emitter and a receiver housed by the sensor body, the sensor system configured to emit emission
beams in an upwardly angled direction with respect to the floor surface, the emission beams generated from light emitted by
the first emitter and the second emitter and twice reshaped,

wherein the receiver is arranged to detect radiation reflected from objects in a bounded detection volume of a field of view
of the receiver aimed outward and downward beyond a periphery of the robot body,

wherein the receiver is disposed above and between the first emitter and the second emitter, wherein the emission beams intersect
the field of view of the receiver at a fixed range of distances from the periphery of the robot body to define the bounded
detection volume,

wherein the receiver is configured to generate a signal in response to receiving reflected radiation produced by the first
emitter and the second emitter as the first emitter and the second emitter are activated sequentially, and

wherein the first emitter and the second emitter are spaced from the top surface of the robot body by a distance of less than
35-45% of a height of the autonomous robot, and the receiver is spaced from the top surface of the robot body at a distance
of less than 20-35% of the height of the autonomous robot.

US Pat. No. 9,914,217

TRANSFERABLE INTELLIGENT CONTROL DEVICE

iRobot Corporation, Bedf...

1. A method of controlling mobile robots, the method comprising:
in a control device having a communications module configured for wireless communication, performing operations comprising:
receiving, via the communications module, information detected by one or more sensors associated with operation of a first
mobile robot in an environment;

storing the information in a memory;
establishing, via the communications module, a direct or indirect wireless communication link with a second mobile robot;
and

controlling transfer of resources, the resources comprising the information detected by the one or more sensors associated
with operation of the first mobile robot, to the second mobile robot via the communications module,

wherein the information detected by the one or more sensors associated with the operation of the first mobile robot comprises
environmental and/or operational information that is usable for navigation of the second mobile robot in the environment,
and

wherein the second mobile robot comprises a cleaning robot, and wherein the information indicates locations in the environment
that have been or are to be cleaned, locations in the environment in which dirt or high traffic areas exist, and/or one or
more cleaning patterns in the environment.

US Pat. No. 9,907,449

AUTONOMOUS FLOOR CLEANING WITH A REMOVABLE PAD

iRobot Corporation, Bedf...

1. An autonomous floor cleaning robot, comprising:
a robot body defining a forward drive direction;
a controller supported by the robot body;
a drive supporting the robot body and configured to maneuver the robot across a surface in response to commands from the controller;
a pad holder disposed on an underside of the robot body and configured to retain a removable cleaning pad during operation
of the robot; and

a pad sensor arranged to sense a feature of the cleaning pad held by the pad holder and generate a corresponding signal;
wherein the controller is responsive to the corresponding signal generated by the pad sensor, and configured to control the
robot according to a cleaning mode selected from a set of multiple robot cleaning modes as a function of the corresponding
signal generated by the pad sensor.

US Pat. No. 9,884,423

AUTONOMOUS ROBOT AUTO-DOCKING AND ENERGY MANAGEMENT SYSTEMS AND METHODS

iRobot Corporation, Bedf...

13. An autonomous cleaning robot, comprising:
an undercarriage;
a motive system configured to propel the undercarriage;
an energy storage unit configured to be charged while the cleaning robot is positioned at a base charging station; and
a navigational control system configured to autonomously:
control the motive system to direct the cleaning robot about a room at a first velocity;
control forward movement of the cleaning robot toward the base charging station at a second velocity less than the first velocity
before completing a cleaning task in the room and in response to detecting a need to charge the energy storage unit;

stop the forward movement of the cleaning robot to dock the cleaning robot to the base charging station;
charge the energy storage unit with the cleaning robot docked at the base charging station; and
control the motive system to direct the cleaning robot to continue to clean the room at the first velocity.

US Pat. No. 9,886,037

SYSTEMS AND METHODS FOR USING MULTIPLE HYPOTHESES IN A VISUAL SIMULTANEOUS LOCALIZATION AND MAPPING SYSTEM

IROBOT CORPORATION, Bedf...

1. A method of localizing a mobile device in a multiple-particle autonomous localization and mapping system, the method comprising:
performing autonomous localization and mapping with a plurality of particles,
wherein a particle includes a device pose and a map, wherein the map includes one or more landmarks; and
calculating an updated device pose estimate for a particle, wherein the technique used to calculate the updated device pose
estimate is selected according to the type associated with the particle, wherein calculating the updated device pose estimate
further comprises calculating the updated device pose for a primary type of particle based at least in part on data from a
dead reckoning sensor, and calculating the updated device pose estimate for a dual type of particle based at least in part
on data from a visual sensor.

US Pat. No. 9,883,783

DEBRIS SENSOR FOR CLEANING APPARATUS

iRobot Corporation, Bedf...

1. An autonomous cleaning apparatus comprising:
a vacuum assembly;
a cleaning head positioned forward of an inlet of the vacuum assembly, the cleaning head comprising a cleaning element configured
to sweep up debris from a cleaning surface;

a piezoelectric sensor disposed above the cleaning element, the piezoelectric sensor being configured to detect the debris
swept up by the cleaning element or pulled by the vacuum assembly;

a drive system configured to move the autonomous cleaning apparatus; and
a control module coupled to the piezoelectric sensor, the control module being configured to
select an operational mode based on signal values from the piezoelectric sensor, and
control the drive system to control movement of the autonomous cleaning apparatus in accordance with the operational mode.

US Pat. No. 9,877,630

WALL FOLLOWING ROBOT

iRobot Corporation, Bedf...

1. A mobile cleaning robot comprising:
a body that is movable relative to a wall surface;
a reservoir configured to hold a fluid;
a spraying mechanism configured to dispense the fluid from the robot;
a bumper mounted to the body, the bumper being movable relative to the body between a fully uncompressed position and a fully
compressed position;

a cleaning pad removably attached to a bottom of the body, the cleaning pad extending beyond a width of the bumper; and
a controller to execute instructions to perform operations comprising:
advancing the robot along a first portion of the wall surface while causing the bumper to be positioned within a predefined
range between the fully uncompressed position and the fully compressed position to maintain an angle between the body and
the first portion of the wall surface and to maintain contact between the cleaning pad and the first portion of the wall surface,
and,

in response to the bumper being positioned between the predefined range and the fully compressed position when the bumper
contacts a second portion of the wall surface, controlling the robot to

retreat from the second portion of the wall surface until the bumper is positioned between the predefined range and the fully
uncompressed position,

turn away from the first portion of the wall surface,
engage the second portion of the wall surface such that the bumper is positioned within the predefined range, and then
advance along the second portion of the wall surface while causing the bumper to be positioned within the predefined range
to maintain an angle between the body and the second portion of the wall surface and to maintain contact between the cleaning
pad and the second portion of the wall surface.

US Pat. No. 9,878,445

DISPLAYING IMAGES FROM A ROBOT

iRobot Corporation, Bedf...

1. A method performed by a robotic system including a mobile robot comprising a camera, the method comprising:
segmenting a map of a household into a plurality of areas of the household, each of the plurality of areas having a corresponding
room identity;

causing a display device to present, to a user, a plurality of room identity markers;
for each of at least two room identities of a plurality of room identities corresponding to the plurality of areas:
causing the display device to present, to the user, an image taken by the robot with the camera in an area of the plurality
of areas corresponding to a room identity;

receiving, using at least one processor remote from the mobile robot, a selection from the user of a room identity marker
from the presented plurality of room identity markers; and

assigning the room identity marker to the room identity;
causing the mobile robot to follow a planned path in a privacy mode, avoiding obstacles unanticipated in the planned path
while image data from the camera is inaccessible to the user on the display device, to a position within the household corresponding
to a designation of a destination room identity marker of the plurality of room identity markers, wherein causing the drive
system of the mobile robot to follow the path further comprises

moving the camera to an image-disabling position when the robot is along a portion of the planned path located outside of
a destination area of the plurality of areas corresponding to a destination room identity assigned to the destination room
identity marker; and

moving the camera to an image-enabling position when the mobile robot is along a portion of the planned path located inside
of the destination area; and

enabling imagery to be presented on the display device in response to the robot reaching the position within the household.

US Pat. No. 9,874,873

ENVIRONMENTAL MANAGEMENT SYSTEMS INCLUDING MOBILE ROBOTS AND METHODS USING SAME

iRobot Corporation, Bedf...

1. A mobile robot, comprising:
a microprocessor connected to a memory and a wireless network circuit, for executing routines stored in the memory and commands
generated by the routines and received via the wireless network circuit;

driven wheels commandable by the microprocessor to reach a multiplicity of accessible two dimensional locations within a household;
a localizing circuit, with at least one localizing sensor that observes sensor readings from objects within the household,
for determining a current pose of the mobile robot with reference to the observed objects, the microprocessor executing a
plurality of routines including:

a navigation routine which commands the driven wheels to move the mobile robot about the household,
a surface mapping routine that accumulates observations from the localizing circuit to record a two dimensional array representing
possible locations of the mobile robot;

a mission time estimate routine that accumulates timed readings from the localizing circuit and determines at least one estimated
completion time span for the mobile robot to substantially traverse a set of locations in the household corresponding to a
contiguous set of possible locations within the two dimensional array,

and a mission pre-planning routine that compares a target completion time to the at least one estimated completion time span,
and commands the driven wheels to begin traversing the household sufficiently in advance of the target completion time to
allow time for the at least one estimated completion time to pass before the target completion time, so that the mobile robot
substantially traverses the set of locations before the target completion time.

US Pat. No. 9,845,850

ROBOTIC ARM AND WRIST MECHANISMS

iRobot Corporation, Bedf...

1. A robot comprising:
a support;
a movable member coupled to the support to permit gimbal rotation about a pitch axis and a yaw axis; and
first and second linear actuators connected to each of the support and the movable member and operable to rotate the movable
member about the pitch axis and the yaw axis;

wherein:
the first linear actuator is pivotally attached to the movable member at a first pivot point;
the second linear actuator is pivotally attached to the movable member at a second pivot point; and
the first and second pivot points are each angularly offset from the pitch axis and the yaw axis by about 45 degrees and are
located on the same side of the pitch axis; and

wherein the first and second linear actuators each include:
a lead screw having a lead screw longitudinal axis and including a lead screw thread; and
a drive nut assembly including:
a guide holder; and
first, second and third guide bearing assemblies each including:
a rotation bearing mounted on the guide holder; and
a plurality of annular guide ribs on the rotation bearing, wherein the rotation bearing permits rotation of the guide ribs
about a guide axis relative to the guide holder and the lead screw;

wherein the guide axis forms an oblique cant angle with the lead screw longitudinal axis;
wherein the first, second and third guide bearing assemblies are serially disposed along the lead screw longitudinal axis
and the oblique cant angle of the second guide bearing assembly is opposite the oblique cant angles of the first and third
guide bearing assemblies; and

wherein the guide ribs are mated with the lead screw thread such that rotation of the lead screw is converted to thrust on
the guide holder.

US Pat. No. 9,833,902

RESTRICTING MOVEMENT OF A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a body movable relative to a surface;
one or more measurement devices within the body to output information indicative of an initial orientation of the robot at
an initial location of the robot on the surface; and

a controller within the body to determine the initial orientation based on the information, and to control movement of the
robot within an area of the surface by,

while the robot is at the initial location and in the initial orientation, defining a virtual barrier corresponding to a line
that extends across a width of the robot and beyond a first lateral side and a second lateral side of the robot, an orientation
of the line being based on the initial orientation of the robot and a location of the line being based on the initial location
of the robot, and

restricting movement of the robot beyond the barrier.

US Pat. No. 9,836,653

SYSTEMS AND METHODS FOR CAPTURING IMAGES AND ANNOTATING THE CAPTURED IMAGES WITH INFORMATION

iRobot Corporation, Bedf...

1. An autonomous mobile robot, comprising:
a drive configured to maneuver the autonomous mobile robot over a floor surface within an operating environment;
a camera having a field of view in a drive direction of the autonomous mobile robot;
a plurality of sensors configured to detect obstacles in the drive direction of the autonomous mobile robot;
a frame buffer configured to store image frames obtained by the camera while the mobile robot is driving, the image frames
corresponding to portions of the operating environment;

a controller configured to maintain a map of the operating environment and associate metadata with a respective image frame
obtained by the camera, the metadata comprising a time and pose of the autonomous mobile robot when the respective image frame
was captured; and

a memory device configured to store a learned data set comprising a plurality of descriptors corresponding to pixel patches
in the image frames, wherein one or more of the descriptors are updated based on sensor events indicative of one or more of
the obstacles detected by the sensors that do not correspond with information in the image frames,

wherein the controller is configured to update the map with locations of the one or more of the obstacles in the portions
of the operating environment that are indicated by the sensor events and do not correspond with the information in the image
frames.

US Pat. No. 9,826,872

DEBRIS MONITORING

iRobot Corporation, Bedf...

19. A method to control an operation of a cleaning apparatus, the method comprising:
detecting an asymmetric accumulation of debris in a cleaning bin based on detecting a difference between a first optical signal
and a second optical signal, the first and second optical signals being horizontally transmitted within the cleaning bin and
across a largest dimension of an opening of the cleaning bin through which the debris is drawn into the cleaning apparatus;
and

providing a control signal to control one or more operations of the cleaning apparatus based on detecting the asymmetric accumulation
of the debris.

US Pat. No. 9,744,670

SYSTEMS AND METHODS FOR USE OF OPTICAL ODOMETRY SENSORS IN A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A mobile robot configured to navigate an operating environment, comprising:
a body containing:
a drive configured to translate the mobile robot in a direction of motion;
at least one processor;
memory containing a navigation application;
an optical odometry sensor system positioned within a recessed structure on an underside of the body and configured to output
optical odometry data, where the optical odometry sensor system comprises an optical odometry camera positioned at a height
between 40 to 60 mm from a floor surface, the optical odometry camera including a telecentric lens configured to capture images
of a tracking surface beneath the body and having a depth of field in which objects are in focus at distances including distances
between negative 5 to 20 mm from a bottom surface of the body; and

a gyroscope configured to output gyroscope measurement data.

US Pat. No. 9,757,004

LIQUID MANAGEMENT FOR FLOOR-TRAVERSING ROBOTS

iRobot Corporation, Bedf...

1. An autonomous floor-traversing robot, comprising:
a wheeled body comprising a chassis and at least one motorized wheel configured to propel the chassis across a floor, the
chassis defining an interior compartment disposed beneath a chassis ceiling;

a cover extending across at least a central area of the chassis ceiling; and
a graspable handle connected to the chassis and located outside the cover so as to be accessible from above the robot, the
handle arranged to enable lifting of the robot;

wherein the chassis ceiling defines a primary drainage channel outside the cover configured to catch liquid from an outer
surface of the cover and conduct the liquid away from the central area.

US Pat. No. 9,725,013

ROBOTIC FLOOR CLEANING APPARATUS WITH SHELL CONNECTED TO THE CLEANING ASSEMBLY AND SUSPENDED OVER THE DRIVE SYSTEM

iRobot Corporation, Bedf...

1. A robotic cleaner, comprising:
a body;
a drive assembly comprising two wheels coupled to the body and configured to move the robotic cleaner, wherein the two wheels
are configured to rotate about a first axis that is substantially perpendicular to a forward direction of travel of the robotic
cleaner;

a microcontroller operatively coupled to the drive assembly for control of movement of the robotic cleaner;
a shell connected to the body;
a cleaning assembly movably connected to the body and configured to clean a floor, the cleaning assembly being positioned
along a second axis substantially parallel to and ahead of the first axis in the forward direction of travel of the robotic
cleaner, and

a sensor configured to detect a collision of the robotic cleaner with an overhanging obstacle, wherein the microcontroller
is configured to reverse the direction of travel of the robotic cleaner in response to the sensor detecting the collision
with the overhanging obstacle.

US Pat. No. 9,706,891

AUTONOMOUS SURFACE CLEANING ROBOT FOR WET AND DRY CLEANING

iRobot Corporation, Bedf...

1. A surface treatment robot comprising:
a robot body having a forward portion and an aft portion, the forward portion preceding the aft portion as the robot moves
in a forward direction over a cleaning surface, the robot having a generally rectangular cross-section;

a differential drive system comprising a right drive wheel and a left drive wheel, each drive wheel rotatable about at least
one transverse axis approximately orthogonal to the forward direction;

a supply volume that stores cleaning liquid;
at least one spray nozzle that applies the cleaning liquid on the cleaning surface;
a pump assembly that moves the cleaning liquid from the supply volume to the at least one spray nozzle, the pump assembly
having an adjustable pumping frequency; and

a scrubbing module disposed forward of the right and left drive wheels, the scrubbing module comprising a replaceable scrubbing
pad.

US Pat. No. 9,623,557

LOCALIZATION BY LEARNING OF WAVE-SIGNAL DISTRIBUTIONS

iRobot Corporation, Bedf...

1. An autonomous mobile robot comprising:
a signal sensor configured to detect a portion of a signal emitted into an environment of the robot and provide a value representing
a property of the detected portion of the signal;

a movement system configured to move the robot along a floor surface of the environment;
a motion sensor configured to detect a motion of the robot; and
a controller configured to:
determine a predicted value of the property of the detected portion of the signal for a particular pose of the robot,
estimate a pose of the robot based at least in part on the provided value of the property, the detected motion of the robot,
and the predicted value of the property for the particular pose, and

control, based on the estimated pose, an operation of the movement system to navigate the robot about the floor surface.

US Pat. No. 9,591,959

DEBRIS SENSOR FOR CLEANING APPARATUS

iRobot Corporation, Bedf...

1. An autonomous cleaning apparatus comprising:
a drive system comprising a right wheel assembly and a left wheel assembly;
a side brush assembly having a side brush and electric motor;
a cleaning head assembly;
a debris bin;
a chassis carrying the drive system, the side brush assembly, the cleaning head assembly, and the debris bin, the side brush
operative to direct particulates from a cleaning surface toward the cleaning head assembly;

a piezoelectric debris sensor disposed between the cleaning head assembly and the debris bin, wherein the particulates directed
by the side brush to the cleaning head assembly toward the debris bin are detectable by the piezoelectric debris sensor; and

a control module configured control the drive system, the control module being configured to adjust movement of the cleaning
apparatus based at least in part on a current rise in the electric motor of the side brush assembly.

US Pat. No. 10,024,964

SCANNING RANGE FINDER

iRobot Corporation, Bedf...

1. A method of mowing an area with an autonomous mowing robot, the method comprising:controlling the mowing robot to autonomously traverse the area bounded by a predetermined boundary, including altering direction of the mowing robot at or near the predetermined boundary so as to redirect the mowing robot back into the bounded area; and
determining a pose of the mowing robot relative to locations of at least two retro-reflective beacons within the bounded area, wherein determining the pose of the mowing robot relative to the locations of the at least two retro-reflective beacons comprises:
pulsing a rotating laser range finder during a planar sweep about an axis of rotation;
monitoring an amplitude of a received signal strength (RSSI) responsive to the pulsing;
identifying a planar sweep angle at which the RSSI sharply transitions from a low level state to a high level state thereby indicating a presence of one of the at least two retro-reflective beacons; and
calculating a heading from the mowing robot to the at least two retro-reflective beacons,
wherein the at least two retro-reflective beacons comprises three retro-reflective beacons, and wherein determining the pose further comprises performing triangulation to the three retro-reflective beacons to calculate the pose within the bounded area.

US Pat. No. 9,993,129

MOBILE FLOOR-CLEANING ROBOT WITH FLOOR-TYPE DETECTION

iRobot Corporation, Bedf...

1. A cleaning robot, comprising:a drive configured to drive the robot across a floor surface;
a cleaning head assembly positioned to engage the floor surface while the robot is maneuvered by the drive;
a motion sensor responsive to changes in pitch; and
a controller circuit in communication with the cleaning head assembly and the motion sensor, the controller circuit configured to determine a flooring type associated with a cleaning characteristic of the robot and configured to alter the cleaning characteristic of the robot as a function of a signal from the motion sensor indicative of a change in pitch caused by the robot crossing a flooring discontinuity.

US Pat. No. 9,958,871

ROBOT CONFINEMENT

iRobot Corporation, Bedf...

1. A robot system comprising:a portable barrier signal device comprising an emitter configured to emit, primarily along an axis, an optical confinement signal to form a directed barrier; and
a mobile robot comprising
at least two wheels,
two motors, each motor being connected to a wheel of the at least two wheels for moving the robot on a surface,
a cleaner configured to clean the surface as the robot moves on the surface,
a detector configured to detect the directed barrier formed by the optical confinement signal, the detector having an omnidirectional field of view such that the detector detects the directed barrier independent of an orientation of the robot relative to the axis defining the directed barrier, and
a control unit to execute operations comprising
determining whether the detector detects the directed barrier, and,
upon determining that the detector detects the directed barrier, initiating one or more operations to move the robot until the optical confinement signal is undetected by the detector.

US Pat. No. 9,955,841

REMOVING DEBRIS FROM CLEANING ROBOTS

iRobot Corporation, Bedf...

1. A system for maintaining a robotic cleaner comprising:a maintenance station including a station housing and a platform on which the robotic cleaner is supported during servicing;
a collection bin removably attached to the housing, wherein the collection bin is different from a cleaner bin located in the robotic cleaner, the collection bin being configured to collect debris from the cleaner bin of the robotic cleaner; and
a user interface device configured to wirelessly communicate to a communication module on the maintenance station and/or to a compatible communication facility on the robot, the user interface device including a maintenance station collection bin full indicator.

US Pat. No. 9,931,007

EVACUATION STATION

iRobot Corporation, Bedf...

1. An evacuation station comprising:a base comprising:
a ramp having a receiving surface for receiving and supporting a robotic cleaner having a debris bin, the ramp defining an evacuation intake opening arranged to pneumatically interface with the debris bin of the robotic cleaner when the robotic cleaner is received on the receiving surface in a docked position;
a first conduit portion of a pneumatic debris intake conduit pneumatically connected to the evacuation intake opening;
an air mover having an inlet and an exhaust, the air mover moving air received from the inlet out the exhaust; and
a particle filter pneumatically connected to the exhaust of the air mover; and
a canister removably attached to the base, the canister comprising:
a second conduit portion of the pneumatic debris intake conduit arranged to pneumatically interface with the first conduit portion to form the pneumatic debris intake conduit when the canister is attached to the base;
a separator in pneumatic communication with the second conduit portion of the pneumatic debris intake conduit, the separator separating debris out of a received flow of air;
an exhaust conduit in pneumatic communication with the separator and arranged to pneumatically connect to the inlet of the air mover when the canister is attached to the base; and
a collection bin in pneumatic communication with the separator.

US Pat. No. 9,931,750

AUTONOMOUS ROBOT AUTO-DOCKING AND ENERGY MANAGEMENT SYSTEMS AND METHODS

iRobot Corporation, Bedf...

1. An autonomous cleaning robot comprising:a housing;
a motive system to propel the housing across a ground surface;
an energy storage unit supported by the housing and configured to be charged while the robot is positioned at a base charging station;
a plurality of detectors mounted on the housing, the plurality of detectors comprising a first detector positioned on a front portion of the housing and a second detector positioned on the housing below the first detector, the first detector being an omnidirectional detector mounted at a highest point of the robot; and
a navigational control system to autonomously control the motive system to
direct the robot about a room to clean the room,
direct the robot to seek the base charging station upon detecting a need to recharge the energy storage unit, and
direct the robot to approach the base charging station to dock the robot based on a first signal emitted by a first emitter of the base charging station and received by the first detector, and based on a second signal emitted by a second emitter of the base charging station and received by the second detector.

US Pat. No. 9,921,586

CELESTIAL NAVIGATION SYSTEM FOR AN AUTONOMOUS VEHICLE

iRobot Corporation, Bedf...

1. An autonomous robotic cleaning device comprising:
a robot body;
a drive supporting the robot body above a floor surface of a home and configured to maneuver the robot body across the floor
surface;

a cleaning apparatus to clean the floor surface;
a processor configured to
wirelessly receive data indicative of a user selection of one or more rooms in the home and a user selection of a schedule
to clean the floor surface in the one or more rooms, and

initiate, in accordance to the schedule, one or more cleaning operations, wherein during each of the one or more cleaning
operations, the drive maneuvers the autonomous robotic cleaning device about the floor surface in accordance to the user selection
of the one or more rooms while the cleaning apparatus cleans the floor surface.

US Pat. No. 9,918,605

WALL FOLLOWING ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a body movable relative to a wall surface;
a bumper mounted on the body, the bumper being movable relative to the body between a fully uncompressed position and a fully
compressed position; and

a controller to cause the robot to execute a wall following behavior in which the robot
advances along a first portion of the wall surface while causing the bumper to contact the wall surface and while maintaining
a position of the bumper within a predefined range between the fully compressed position and the fully uncompressed position
to maintain an angle between the bumper and the wall surface,

in response to the position of the bumper being between the predefined range and the fully uncompressed position, rotates
toward the first portion of the wall surface while advancing along the first portion of the wall surface such that contact
between the robot and the wall surface is maintained, and then

advances along a second portion of the wall surface orthogonal to the first portion of the wall surface.

US Pat. No. 9,910,444

SYSTEMS AND METHODS FOR VSLAM OPTIMIZATION

iRobot Corporation, Bedf...

1. A method for navigating a mobile system, the method implemented on one or more computer systems, comprising:
matching landmarks for a first query image associated with a mobile device by:
retrieving features from a global database for the first query image, wherein the global database comprises a plurality of
landmarks and each landmark corresponds to a collection of 3-D features and corresponding 2-D features from which the 3-D
features are computed;

ranking landmarks of the plurality of landmarks by visual similarity to features of the first query image;
selecting, from the global database, candidate landmarks that potentially match the features of the first query image;
for each of the candidate landmarks selected from the global database:
retrieving features in a local database for each of the candidate landmarks selected from the global database for the first
query image, wherein the local database comprises a collection of 3-D features and corresponding 2-D features from which the
3-D features are computed for a specific landmark from the plurality of landmarks in the global database;

performing robust pose estimation;
performing bundle adjustment;
determining an observation pose and covariance; and
selecting one of the candidate landmarks as a matching landmark for the first query image; and
responsive to selecting the matching landmark for the first query image, retrieving features from the global database for
a next query image, selecting next candidate landmarks therefrom, and retrieving features in a local database for the next
query image.

US Pat. No. 9,902,069

MOBILE ROBOT SYSTEM

iRobot Corporation, Bedf...

1. A method of operating a robot, the method comprising:
maneuvering the robot about a scene;
capturing images of the scene along a drive direction of the robot, the images comprising at least one of a three-dimensional
depth image, an active illumination image, or an ambient illumination image;

receiving sensor data indicative of the scene, the sensor data comprising the images;
communicating the sensor data from the robot to a cloud computing service that processes the received sensor data into a process
resultant, the process resultant comprising an indoor or outside street view of the scene comprising reference locations marked
thereon;

receiving the process resultant at the robot from the cloud computing service; and
maneuvering the robot in the scene based on the received process resultant,
wherein the cloud computing service further provides a 2-D map to the robot, the cloud computing service computing the 2-D
map from a 3-D map, wherein the 2-D map indicates obstacles or hazards to the robot.

US Pat. No. 9,901,236

ROBOT SYSTEM

iRobot Corporation, Bedf...

1. A mobile cleaning robot comprising:
a drive system to move the robot on a floor surface;
a cleaning unit to clean the floor surface;
an audio output device to emit audio content;
a display system operable to present visual indications;
a controller configured to,
in an operational mode, operate the display system to present a first indicator indicative an operating state of the robot,
the first indicator being indicative of one or more of a power state of the robot, a dormant state of the robot, a charging
state of the robot, and a behavior of the robot, and

in a training mode, operate the display system to present a second indicator and operate the audio output device to audibly
emit content in coordination with the second indicator to provide a user with one or more of an audible tutorial, technical
support, a training program, instructions to demonstrate operational features of the robot, and instructions to interact with
the robot.

US Pat. No. 9,895,808

METHODS AND SYSTEMS FOR COMPLETE COVERAGE OF A SURFACE BY AN AUTONOMOUS ROBOT

iRobot Corporation, Bedf...

1. A mobile device configured to navigate a surface, the mobile device comprising:
a movement mechanism configured to move the mobile device among poses on the surface, each of the poses comprising a respective
location and orientation of the mobile device on the surface;

a mapping module configured to update a map representing data about the surface, the map associating locations of the surface
with one or more properties, the properties being indicative of unexplored, explored, and occupied locations, wherein frontiers
indicate respective boundaries between the explored locations and the unexplored locations, and edges indicate respective
boundaries between the explored locations and the occupied locations;

a region-covering module configured to cause the movement mechanism to move the mobile device so as to cover regions of the
surface and to cause the mapping module to update the map responsive thereto;

an edge-following module configured to cause the movement mechanism to move the mobile device along edges, cause the mapping
module to extend the edges and add frontiers that are adjacent one or more of the edges and are discovered as the mobile device
moves along the edges, and cause the region-covering module to cause the movement mechanism to move the mobile device so as
to cover one or more of the frontiers responsive to discovery thereof during moving the mobile device along the edges.

US Pat. No. 9,868,211

RESTRICTING MOVEMENT OF A MOBILE ROBOT

iRobot Corporation, Bedf...

1. A robot comprising:
a body movable relative to a surface;
one or more measurement devices within the body to output information indicative of an initial orientation of the robot at
an initial location of the robot on the surface; and

a controller within the body to determine the initial orientation based on the information, and to control movement of the
robot within an area of the surface by,

while the robot is at the initial location and in the initial orientation, defining a virtual barrier corresponding to a line
that extends across a width of the robot and beyond a first lateral side and a second lateral side of the robot, an orientation
of the line being based on the initial orientation of the robot and a location of the line being based on the initial location
of the robot, and

restricting movement of the robot beyond the barrier.

US Pat. No. 9,725,012

ARTICULATED JOINT AND THREE AREAS OF CONTACT

iRobot Corporation, Bedf...

1. An apparatus comprising:
a motorized drive assembly of a robotic cleaner configured to move the robotic cleaner in a cleaning pattern along an overall
path of parallel rows, the motorized drive assembly comprising two drive wheels, and the cleaning pattern comprising:

a first forward motion turning left from an axis of a row of the parallel rows;
a reverse motion back to the axis of the row;
a second forward motion turning right from the axis of the row;
the reverse motion back to the axis of the row; and
a third forward motion along the axis of the row;
a cleaning assembly configured to clean the surface, the cleaning assembly configured to hold a cleaning cloth; and
a holding tank configured to hold a cleaning solution, wherein the robotic cleaner is configured to spray the cleaning solution
onto the surface with a sprayer.

US Pat. No. 9,751,210

SYSTEMS AND METHODS FOR PERFORMING OCCLUSION DETECTION

iRobot Corporation, Bedf...

1. A mobile robot configured to navigate an operating environment, comprising:
a body containing:
a drive configured to translate the mobile robot in a direction of motion;
a machine vision system comprising a camera that captures images of the operating environment of the mobile robot;
a processor;
memory containing a simultaneous localization and mapping (SLAM) application and a behavioral control application:
wherein the behavioral control application directs the processor to:
capture images using the machine vision system;
detect a presence of an occlusion obstructing a portion of a field of view of the camera based on the captured images; and
generate a notification when the occlusion obstructing the portion of the field of view of the camera is detected; and
wherein the behavioral control application further directs the processor to maintain occlusion detection data describing occluded
and unobstructed portions of images being used by the SLAM application.

US Pat. No. 9,704,043

SYSTEMS AND METHODS FOR CAPTURING IMAGES AND ANNOTATING THE CAPTURED IMAGES WITH INFORMATION

iRobot Corporation, Bedf...

1. A method for training a classifier of a mobile robot, the method comprising:
obtaining a plurality of image frames along a drive direction of the mobile robot,
the plurality of image frames comprising a base image frame corresponding to an initial pose of the mobile robot and subsequent
image frames obtained at intervals during forward travel of the mobile robot,

the mobile robot having a forward facing camera mounted thereon for obtaining the image frames,
the camera having a field of view including a floor in front of the mobile robot, and
the mobile robot having a memory device configured to store a learned data set of a plurality of descriptors determined by
mobile robot events;

assuming that a location is traversable floor, wherein the mobile robot is configured to detect traversable floor and non-traversable
non-floor with one or more sensors mounted on the mobile robot;

determining that the location is non-traversable non-floor based on a robot sensor event at the location, the robot sensor
event comprising detection of a collision;

retrieving from a frame buffer an image frame obtained immediately prior to the robot sensor event;
generating a floor descriptor corresponding to characteristics of the floor at a bottom of the image frame captured by the
camera immediately prior to the robot sensor event;

generating a non-floor descriptor corresponding to characteristics of the non-traversable non-floor at a top of the image
frame captured by the camera immediately prior to the robot sensor event; and

storing the floor descriptor and the non-floor descriptor in the learned data set.

US Pat. No. 9,582,005

ROBOT CONFINEMENT

iRobot Corporation, Bedf...

1. A robot confinement system, comprising:
a portable barrier signal transmitting device comprising:
a first emitter configured to emit a first confinement beam; and
an input device enabling a user to select an amount of power of the first confinement beam; and
a mobile robot comprising:
at least two wheels;
at least one motor connected to the at least two wheels for moving the mobile robot on a surface;
a cleaner configured to clean the surface as the mobile robot moves on the surface;
a detector configured to detect the first confinement beam; and
a controller configured to control the at least one motor to change a movement path of the mobile robot to prevent the mobile
robot from crossing the first confinement beam by

determining whether the detector detects the first confinement beam, and
upon determining that the detector detects the first confinement beam, turning the robot in a chosen direction until the detector
no longer detects the first confinement beam.

US Pat. No. 9,550,294

AUTONOMOUS ROBOT AUTO-DOCKING AND ENERGY MANAGEMENT SYSTEMS AND METHODS

iRobot Corporation, Bedf...

1. An autonomous cleaning robot, comprising:
an undercarriage;
a motive system configured to propel the undercarriage across a ground surface;
an energy storage unit supported by the undercarriage and configured to be charged while the robot is positioned at a base
charging station; and

a navigational control system configured to autonomously:
control the motive system to direct the robot about a room, while mapping the room with respect to objects as points of reference;
return the robot to the base charging station before completing a cleaning task in the room, in response to detecting a need
to recharge the energy storage unit;

dock the robot to the base charging station upon return;
recharge the energy storage unit with the robot docked; and then to
control the motive system to direct the robot to continue to clean the room.

US Pat. No. 9,538,892

ROBOT MANAGEMENT SYSTEMS FOR DETERMINING DOCKING STATION POSE INCLUDING MOBILE ROBOTS AND METHODS USING SAME

iRobot Corporation, Bedf...

1. A mobile robot system comprising:
a docking station including at least two pose-defining fiducial markers, the at least two pose-defining fiducial markers having
a predetermined spatial relationship with respect to one another and/or to a reference point on the docking station such that
a docking path to the base station can be determined from one or more observations of the at least two pose-defining fiducial
markers;

a mobile robot including:
a chassis,
a motorized drive connected to the chassis for moving the mobile robot to a docked position, and
a pose sensor assembly comprising a sensor configured to output a signal in response to the at least two pose-defining fiducial
markers in a pose sensor field of view;

a controller configured to analyze the output signal from the pose sensor assembly, the controller having the predetermined
spatial relationship of the at least two pose-defining fiducial markers stored in a controller memory,

wherein the controller is configured to determine a docking station pose that is based on the spatial relationship of the
pose-defining fiducial markers and the signals from the pose sensor assembly, and to locate the docking station pose on a
map of a surface traversed by the mobile robot, wherein the docking station pose comprises a position defined by location
coordinates on the map and an angular orientation of the docking station on the map, and the docking station pose defines
a docking lane on the map comprising outside edges and a central axis that is aligned with a central axis of the docking port,
and the controller is configured to store the pose of the docking station on the map of the surface traversed by the mobile
robot; and

the controller is further configured to path plan a docking trajectory including a curve having a terminal portion aligned
with the central axis of the docking lane of the docking station, based on a current robot position on the map of the surface
and the docking station pose including the outside edges and the central axis of the docking lane and to provide instructions
to the motorized drive to move the mobile robot along the curve of the docking trajectory and into a docking lane within the
outside edges and along the central axis of the docking lane of the docking station.

US Pat. No. 9,146,558

MOBILE ROBOT AND METHOD OF OPERATING THEREOF

iRobot Corporation, Bedf...

1. A method of operating a mobile robot, the method comprising:
driving the robot according to a drive direction;
receiving robot position and movement data comprising:
gyro data of the robot including a robot angular rate and a robot acceleration;
drive odometry of the robot; and
global positioning coordinates of the robot obtained from satellite communications;
when the robot is at rest, determining a gyro bias based on the gyro data;
determining a three-dimensional gravity vector of the robot based on the gyro data;
determining an ego-motion estimate of the robot by:
subtracting the gyro bias from the gyro data;
resolving the gyro data relative to the three-dimensional gravity vector; and
adding angular rates from the resolved gyro data to the drive odometry of the robot;
when the satellite communications used to obtain the global positioning coordinates of the robot are available, determining
a robot global position by combining the ego-motion estimate and the global positioning coordinates of the robot;

when the satellite communications used to obtain the global positioning coordinates of the robot are unavailable:
determining the robot global position of the robot based on at least one of the gyro data, the drive odometry, or dead reckoning;
and

upon regaining the satellite communications, obtaining global positioning coordinates of a current location of the robot and
determining the robot global position by combining the ego-motion estimate and the global positioning coordinates of the current
location of the robot;

determining a driven path of the robot from an origin based on the robot global position;
displaying a drive view on a remote operator control unit in communication with the robot, the drive view having the driven
path of the robot from the origin; and

displaying a map in the drive view using the global positioning coordinates, the driven path of the robot displayed on the
map.

US Pat. No. 10,034,421

CONTROLLING ROBOTIC LAWNMOWERS

iRobot Corporation, Bedf...

1. A method of mowing with an autonomous robot lawnmower, the method comprising:traversing, by the autonomous robot lawnmower, a mowable area such that a vegetation characteristic sensor carried by the autonomous robot lawnmower generates sensor data indicative of a grass height of vegetation of the mowable area;
storing, by the autonomous robot lawnmower in electronic memory of the autonomous robot lawnmower, position-referenced data representing the grass height detected across the mowable area, the position-referenced data being based at least in part on the sensor data and position data indicative of positions of the autonomous robot lawnmower; and
transmitting, by the autonomous robot lawnmower, data to a remote device to cause the remote device to display
a map comprising a representation of the mowable area color-coded based on the position-referenced data, and
a recommendation based on the position-referenced data and selected from the group consisting of a recommendation to water one or more portions of the mowable area and a recommendation to modify a mowing frequency.

US Pat. No. 10,037,038

LAWN CARE ROBOT

iRobot Corporation, Bedf...

1. A robot lawnmower comprising:a drive system configured to maneuver the robot lawnmower across a lawn;
a controller in communication with the drive system;
a grass cutter;
at least one obstacle sensor in communication with the controller and configured to detect surface phenomena indicating potential obstacles;
a boundary responder detection system including a receiver unit configured to receive signals from active boundary responders;
wherein the controller is configured to:
operate in a check setup mode in which a user maneuvers the robot lawnmower to circumnavigate and approach a boundary and obstacles while the robot lawnmower is in manual mode, and to
permit operation of the robot lawnmower in an autonomous mode in which the controller determines a location of the robot lawnmower based at least in part on a time-of-flight from one or more of the active boundary responders and only after the check setup mode is completed; and
a user interface configured to provide notification during the check setup mode when the robot lawnmower detects surface phenomena indicated as water content detected by a water content sensor, as surface phenomena detected by a tilt sensor, or as loss of wheel contact detected by a wheel drop sensor.

US Pat. No. 10,035,270

CONTACT SENSORS FOR A MOBILE ROBOT

iRobot Corporation, Bedf...

1. An autonomous mobile robot comprising:a body movable relative to a surface;
a bumper mounted on the body and movable relative to the body, the bumper having a front side, a lateral side, and a corner, the bumper comprising:
a backing including a forward portion at the front side of the bumper, a lateral portion at the lateral side of the bumper, and a corner portion at the corner of the bumper, the corner portion connecting the forward portion and the lateral portion and being configured to inhibit a force applied to the forward portion of the backing from transferring to the lateral portion and to inhibit a force applied to the lateral portion of the backing from transferring to the forward portion;
a sensor system including a first sensor at the corner of the bumper to detect a force applied to the corner of the bumper; and
a controller operable to move the body based on an electrical signal from the sensor system.

US Pat. No. 10,021,830

BLADE ASSEMBLY FOR A GRASS CUTTING MOBILE ROBOT

iRobot Corporation, Bedf...

1. A grass cutting mobile robot comprising:a body; and
a blade assembly connected to the body and rotatable about a drive axis, the blade assembly comprising:
two or more blades, wherein, for each of the two or more blades, the blade is rotatably mounted on a mounting axis and includes a cutting portion extending inwardly toward the drive axis from a blade tip; and
a housing to hold the two or more blades, wherein, for each of the two or more blades, at least a portion of the blade extends upward from the mounting axis, through the housing, and relative to a horizontal ground surface so that, in response to an impact, the portion of the blade is configured to move within the housing towards the drive axis by rotating about the mounting axis of the blade to cause the cutting portion of the blade to move upward relative to the horizontal ground surface toward the body and to reduce a tip radius defined by the blade tip and the drive axis as the blade tip rotates about the drive axis.

US Pat. No. 9,952,053

ADAPTIVE MAPPING WITH SPATIAL SUMMARIES OF SENSOR DATA

iRobot Corporation, Bedf...

1. A method of mapping an environment, the method comprising:estimating a first current pose of a robot driving in an environment based on parameters measured by the robot, the robot having a visual sensor and the parameters including obstacles and clear spaces;
defining a first local origin that represents an estimate of the first current pose, wherein the first local origin is one of a plurality of local origins;
generating a first map of the measured parameters, wherein the measured parameters are mapped relative to the first pose;
after driving a determined period of time, determining an estimate of a second current pose of the robot;
determining an uncertainty between the estimate of the first current robot pose and the estimate of the second current pose of the robot; and
responsive to the uncertainty being greater than a first threshold, then:
defining a second local origin that represents the estimate of the second current pose of the robot; and
generating a second map of measured parameters mapped relative to the second current pose.

US Pat. No. 9,949,608

NAVIGATIONAL CONTROL SYSTEM FOR A ROBOTIC DEVICE

iRobot Corporation, Bedf...

1. An autonomous cleaning apparatus comprising:a chassis;
a drive system disposed on the chassis and operable to enable movement of the cleaning apparatus;
a controller in communication with the drive system, the controller including a processor operable to control the drive system to steer movement of the cleaning apparatus;
a cleaning head system disposed on the chassis having a cleaning pathway providing pneumatic communication with a debris bin, the cleaning head system comprising an agitating brush configured to throw debris into the debris bin;
an indicator light; and
a debris sensor in communication with the controller, the debris sensor responsive to the debris to generate a signal indicative of passing of the debris;
wherein the controller is configured to
change an operational condition of the cleaning apparatus in response to receiving the signal generated by the debris sensor, the operational condition selected from the group consisting of a speed of the movement of the cleaning apparatus and an amount of power drawn by the cleaning apparatus, and to
illuminate the indicator light in response to the signal generated by the debris sensor.