Fiducial-based lidar malfunction detection for autonomous motile devices
An autonomous motile device (AMD) may include a light detection and ranging (LIDAR) subsystem that is usable for floor detection. The LIDAR subsystem may include a LIDAR component and a fiducial disposed in a path of light emitted by the LIDAR component. The LIDAR component provides distance data to a processor, the distance data comprising one or more distance values based at least in part on light emitted towards the fiducial. The processor determines a value based on the distance data, and determines whether the value is outside of a predetermined range of values. If the value is out of bounds, this may be indicative of the LIDAR component having malfunctioned, and the processor may cause the AMD to perform an action in response to the LIDAR malfunction.
1 . A household robot system comprising:
a household robot configured to move autonomously over a floor;
a light detection and ranging (LIDAR) subsystem comprising:
a LIDAR component mounted to a body of the household robot at a front side of the household robot, wherein the LIDAR component is configured to emit first light pulses that are in a first direction towards the floor in front of the household robot and in a second direction associated with malfunction detection; and
a fiducial coupled to at least one of the LIDAR component or the body, wherein the fiducial is disposed behind the LIDAR component in a path of second light pulses emitted by the LIDAR component towards the fiducial in the second direction; and
a processor configured to, during the operation of the robot:
cause the household robot to move autonomously over the floor;
receive, from the LIDAR component, and based on the second light pulses, distance data indicative of distances between the LIDAR component and points on the fiducial;
determine a value based at least in part on the distance data;
determine that the value is outside of a predetermined range of values indicating that the LIDAR component has malfunctioned; and
cause the household robot to stop moving based at least in part on determining that the value is outside of the predetermined range of values.
2 . The household robot system of claim 1 , wherein:
the LIDAR component comprises a light emitter and a light detector disposed behind a cover glass; and
the fiducial is coupled to the LIDAR component by the fiducial being adhered to the cover glass with an adhesive.
3 . The household robot system of claim 1 , wherein:
the LIDAR component comprises:
a base;
a head having a light emitter and a light detector; and
a target coupled to the base, the target extending above a top side of the base, and spaced a distance from the head; and
the fiducial is coupled to the LIDAR component by the fiducial being disposed on a front surface of the target.
4 . The household robot system of claim 1 , wherein:
the LIDAR component comprises a head having a light emitter and a light detector; and
the fiducial is coupled to the body of the household robot by the fiducial being disposed on a front surface of a rear LIDAR cover that is:
coupled to the body of the household robot;
disposed behind the LIDAR component; and
spaced a distance from the head.
5 . The household robot system of claim 1 , wherein the fiducial comprises:
a first section having a first reflectivity; and
a second section beside the first section, the second section having a second reflectivity different than the first reflectivity.
6 . A system comprising:
an autonomous device;
a light detection and ranging (LIDAR) subsystem comprising:
a LIDAR component coupled to a body of the autonomous device, wherein the LIDAR component is configured to emit light in a first path associated with a forward direction of travel of the autonomous device and a second path associated with malfunction detection; and
a fiducial coupled to at least one of the LIDAR component or the body of the autonomous device, wherein the fiducial is disposed in the second path; and
a processor configured to, during the operation of the autonomous device:
receive, from the LIDAR component, distance data indicative of one or more distances between the LIDAR component and one or more points on the fiducial;
determine a value based at least in part on the distance data;
determine that the value is outside of a predetermined range of values indicating a malfunction; and
cause the autonomous device to perform an action based at least in part on determining that the value is outside of the predetermined range of values.
7 . The system of claim 6 , wherein the fiducial is disposed behind the LIDAR component.
8 . The system of claim 6 , wherein:
the LIDAR component comprises a head having:
a cover; and
a light emitter and a light detector disposed within the cover; and
the fiducial is coupled to the LIDAR component by the fiducial being disposed on the cover.
9 . The system of claim 6 , wherein:
the LIDAR component comprises:
a base;
a head having a light emitter and a light detector; and
a target coupled to the base, the target extending above a top side of the base, and spaced a distance from the head; and
the fiducial is coupled to the LIDAR component by the fiducial being disposed on a front surface of target.
10 . The system of claim 6 , wherein:
the LIDAR component comprises a head having a light emitter and a light detector; and
the fiducial is coupled to the body of the autonomous device by the fiducial being disposed on a front surface of a rear cover that is:
coupled to the body of the autonomous device;
disposed behind the LIDAR component; and
spaced a distance from the head.
11 . The system of claim 6 , wherein:
the LIDAR component comprises a light emitter and a light detector that are configured to rotate at a frame rate;
the distance data comprises a plurality of distance values obtained over a series of frames while the light emitter and the light detector rotate at the frame rate; and
determining the value based at least in part on the distance data comprises computing an average of the plurality of distance values.
12 . The system of claim 6 , wherein the fiducial comprises:
a first section having a first reflectivity; and
a second section adjacent to the first section, the second section having a second reflectivity different than the first reflectivity.
13 . The system of claim 6 , wherein the fiducial comprises:
a top section;
a bottom section; and
a middle section between the top section and the bottom section, the middle section having a reflectivity that is different than:
a reflectivity of the top section; and
a reflectivity of the bottom section.
14 . The system of claim 6 , wherein the fiducial comprises:
a repeating pattern of sections having a first reflectivity, individual sections of the sections having a variable width in a vertical direction; and
regions between the sections having a second reflectivity different than the first reflectivity.
15 . The system of claim 6 , wherein determining the value based at least in part on the distance data comprises determining a confidence value associated with the distance data.
16 . A method comprising:
receiving, by a processor, and from a light detection and ranging (LIDAR) component mounted to a body of a robot, first distance data associated with first light pulses emitted by the LIDAR component in a first direction in front of the robot;
receiving, by the processor and during the operation of the robot, and from the LIDAR component, second distance data associated with second light pulses emitted by the LIDAR component in a second direction behind the robot, the second distance data indicative of one or more distances between the LIDAR component and one or more points on a fiducial disposed in a path of light emitted by the LIDAR component in the second direction;
determining, by the processor, a value based at least in part on the second distance data;
determining, by the processor, that the value is outside of a predetermined range of values indicating a malfunction; and
causing, by the processor, an autonomous device to perform an action based at least in part on determining that the value is outside of the predetermined range of values.
17 . The method of claim 16 , wherein:
the LIDAR component comprises a light emitter and a light detector that are configured to rotate at a frame rate;
the distance data comprises a plurality of distance values obtained over a series of frames while the light emitter and the light detector rotate at the frame rate; and
the determining the value based at least in part on the distance data comprises computing an average of the plurality of distance values.
18 . The method of claim 16 , wherein the fiducial comprises:
a first section having a first reflectivity; and
a second section adjacent to the first section, the second section having a second reflectivity different than the first reflectivity.
19 . The method of claim 16 , wherein the fiducial is disposed behind the LIDAR component within a body of the autonomous device.
20 . The method of claim 16 , wherein the distance data is first distance data indicative of one or more first distances between the LIDAR component and the one or more points on the fiducial, the method further comprising:
receiving, by the processor, and from the LIDAR component, second distance data indicative of one or more second distances between the LIDAR component and the one or more points on the fiducial disposed;
determining, by the processor, that a change in temperature has caused the one or more second distances to be different than the one or more first distances by an amount that is less than or equal to a threshold amount;
receiving, by the processor, and from the LIDAR component, third distance data indicative of one or more third distances between the LIDAR component and one or more points on a floor below the autonomous device; and
adding the amount to, or subtracting the amount from, the one or more third distances to compensate for the change in temperature.