COPYRIGHT

A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.

BACKGROUND

Technological Field

The present application relates generally to robotics, and more specifically to systems, apparatuses, and methods for bias determination and value calculation of parameters of a robot.

Background

Currently, many robots may perform a plurality of functions, such as, for example, learning a route through an environment by having a human operator navigate the robot along the route. The robots may, for example, follow the operator, be pushed by the operator, or be driven by the operator to learn the route. As the operator navigates the robot along the route, the robot may store odometry and sensor data recorded during navigation of the route to be recalled at a later time to recreate the route.

However, data collected by the sensors and odometry of the robot may be susceptible to biases of the sensor and odometry instruments. These biases may cause the robot to recreate the route incorrectly due to, for example, oversteering due to an overbiased steering encoder. These biases may be intrinsic to the sensor or odometry unit used or may be caused due to wear and tear on the robot causing the sensors or odometry unit to become poorly calibrated.

Additionally, the sensor and odometry units may further comprise noise, which may further affect the ability of the robot to recreate the route. Accordingly, there is a need in the art for systems and methods for determining biases and values of parameters of a robot such that a robot, for example, may accurately recreate a learned route based on sensor and odometry data.

SUMMARY

The foregoing needs are satisfied by the present disclosure, which provides for, inter alia, systems, apparatuses, and methods for bias determination and value calculation of parameters of a robot. The systems and methods disclosed herein are directed towards a practical application of bias determination and value calculation of parameters of a robot to enhance navigation, safety, mapping and localization capabilities, and task performance of the robot by enabling the robot to account for biases in its constituent components.

Exemplary embodiments described herein have innovative features, no single one of which is indispensable or solely responsible for their desirable attributes. Without limiting the scope of the claims, some of the advantageous features will now be summarized.

According to at least one non-limiting exemplary embodiment, a robotic system is disclosed. The robotic system may comprise a plurality of sensors and odometry units, such as, for example, light detection and ranging (LiDAR) sensors, gyroscopes, accelerometers, and encoders. Each of these units may not be perfectly calibrated in most situations and may therefore comprise some bias in measurements outputted by the sensor and/or odometry units. The biases of the odometry and sensor units may cause navigation parameters of the robotic system to be biased, wherein the navigation parameters comprise parameters useful for recreating and/or navigating a route, such as, for example, angular velocity, translational velocity, acceleration, and/or localization parameters (e.g., distance measurements to nearby objects).

According to at least one non-limiting exemplary embodiment, a non-transitory computer readable storage medium comprising a plurality of instructions embodied thereon is disclosed. The plurality of instructions may be executed by a specialized processor to cause the specialized processor to navigate a robot along a route and collect data from sensors coupled to the robot; generate a probability distribution function (PDF) of at least one parameter of the robot based on the data from sensors, the at least one parameter describing a physical feature, movement, or internal characteristic of the robot; determine at least one value for the respective at least one parameter based on the respective at least one PDF; and produce a map of an environment based on the at least one value, the map comprising the route and objects localized therein. In some embodiments, the route is navigated while the robot is in a training mode and acting under user guidance (e.g., being pushed, pulled, driven, lead, etc. through the route). The at least one PDF may be calculated, at least in part, as a kinematic model of the robot.

According to at least one non-limiting exemplary embodiment, the computer readable instructions further configure the processor to utilize the map to navigate the robot along the route.

According to at least one non-limiting exemplary embodiment, the computer readable instructions further configure the processor to utilize the at least one value and a predetermined kinematic model of the robot to determine a second value of a second parameter of the robot, the second value of the second parameter being utilized to determine actuator commands to configure motions of the robot in accordance with the kinematic model and the route. The second parameter may include, but is not limited to, wheel separation of a wheeled robot, size or radius of wheels, or any other parameter of a kinematic model which describes a physical feature of the robot.

According to at least one non-limiting exemplary embodiment, the at least one PDF comprises, in part, distributions of biases of one or more navigation parameters.

According to at least one non-limiting exemplary embodiment, one of the at least one PDF comprises a distribution of time delays between measurements received by the processor from a first sensor unit and a second sensor unit; the respective value determined based on the PDF represents a most probable or average value of the time delay; and the map is produced based on measurements of the first and second sensor units by accounting for the value of the time delay between measurements from the respective first and second sensors. According to at least one non-limiting exemplary embodiment, a method is disclosed. The method, effectuated by a processor executing computer readable instructions from a memory, comprises navigating a robot along a route while collecting data from sensors coupled to the robot; calculating at least two values of the parameter based on measurements from at least two respective sensor units, the at least two values being calculated based on a predetermined equation or model; collecting measurements of the at least two values as or after the robot navigates the route to generate a probability density function (PDF) of the parameter; estimating a first value of the parameter based on the PDF; and causing the robot to navigate the route based on the first value.

According to at least one non-limiting exemplary embodiment, the estimated first value may comprise a deviation from an ideal value of the parameter, and the parameter may comprise a navigation parameter of the robot. According to at least one non-limiting exemplary embodiment, the first value may comprise a measure of wheel separation of the robot based on, in part, a kinematic model of the robot.

According to at least one non-limiting exemplary embodiment, the method may further comprise producing a computer-readable map based on, at least in part, the first value, the computer-readable map comprising the route and localized objects.

According to at least one non-limiting exemplary embodiment, the at least two values comprise a first value and a second value, the first value being calculated using standalone laser odometry and the second value comprising gyroscope measurements; and the estimated first value comprises a time delay between measurements between the standalone laser odometry and gyroscope which indicate the robot is turning during portions of the route. According to at least one non-limiting exemplary embodiment, the method may further comprise of measuring biases of the gyroscope at locations where the robot is idle upon a flat surface and accounting for the measured biases of the gyroscope during estimation of the first value of the time delay.

According to at least one non-limiting exemplary embodiment, a non-transitory computer readable storage medium is disclosed. The non-transitory computer readable storage medium comprising a plurality of computer readable instructions stored thereon that, when executed by a processor, configure the processor to: navigate a robot through a route and collect data from sensor units coupled to the robot; generate at least one probability distribution function (PDF) of at least one respective parameter of the robot based on the data from the sensor units, the at least one respective parameter comprising a measurement of a physical feature, motion/navigation, or internal characteristic of the robot; determine at least one value for the respective at least one parameter based on the respective at least one PDF; and navigate the robot along the route based on the at least one value of each of the respective at least one parameter. Each of the at least one PDF may be generated using measurements from two or more sensor units. The at least one PDF comprises, at least in part, a PDF of a navigation parameter.

According to at least one non-limiting exemplary embodiment, the computer readable instructions may further configure the processor to generate a computer-readable map based on the at least one respective parameter, the computer-readable map comprising localized objects and the route.

According to at least one non-limiting exemplary embodiment, the computer readable instructions may further configure the processor to determine if one or more sensors and odometry units of the robot require calibration from a human based on a variance of the PDF of the respective parameter meeting or exceeding a prescribed variance threshold.

According to at least one non-limiting exemplary embodiment, the computer readable instructions may further configure the processor to determine a measurement bias of a gyroscope by measuring a second value from the gyroscope at designated locations along the route where the robot is idle upon a flat surface, the second value being equal to the measurement bias.

These and other objects, features, and characteristics of the present disclosure, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the disclosure. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise.

