Vehicle for measuring inclination angle and distance profile
阅读说明:本技术 倾角和距离轮廓测量车辆 (Vehicle for measuring inclination angle and distance profile ) 是由 S.帕特尔 F.阿卜杜拉蒂夫 B.帕罗特 于 2019-02-06 设计创作,主要内容包括:本文公开了用于对表面进行轮廓测量的系统和方法。在一些实施例中,所述系统和方法使用机器人车辆执行轮廓测量。所述车辆可以包含驱动系统、一个或多个车轮编码器和一个或多个距离传感器和/或惯性测量单元,所述一个或多个距离传感器和/或惯性测量单元用于捕获测量数据,如所述表面的斜率或所述机器人车辆相对于所述表面或重力矢量的角度。包含控制计算系统,所述控制计算系统具有一个或多个处理器,所述一个或多个处理器执行存储在软件模块中的指令以处理移动数据。在一些实施例中,经过处理的移动数据确定在所述机器人车辆横越所述表面时的不同时间和位置处所述表面的多个快照。组合这些快照以生成所述表面的轮廓。(Systems and methods for profiling a surface are disclosed herein. In some embodiments, the systems and methods perform profile measurements using a robotic vehicle. The vehicle may include a drive system, one or more wheel encoders and one or more distance sensors and/or inertial measurement units for capturing measurement data, such as the slope of the surface or the angle of the robotic vehicle relative to the surface or gravity vector. Including a control computing system having one or more processors executing instructions stored in software modules to process movement data. In some embodiments, the processed movement data determines a plurality of snapshots of the surface at different times and locations as the robotic vehicle traverses the surface. These snapshots are combined to generate a profile of the surface.)
1. A system for profiling a surface, the system comprising:
a robotic vehicle having a drive system, at least one wheel, and one or more wheel encoders housed within each wheel for measuring movement of the robotic vehicle as the robotic vehicle is driven by the drive system;
one or more distance sensors coupled to the robotic vehicle to measure a slope of the surface;
a control computing system, the control computing system comprising:
a non-transitory computer-readable storage medium,
one or more processors in electronic communication with the one or more sensors, each wheel encoder, the robotic vehicle, and the computer-readable storage medium,
one or more software modules comprising executable instructions stored in the storage medium, wherein the one or more software modules are executable by the processor and comprise:
a movement module that configures the processor to receive movement data from the one or more wheel encoders to determine a position of the robotic vehicle,
a sensor control module that configures the processor to instruct the one or more distance sensors to transmit one or more signals toward the surface at respective pulse times and detect times at which the one or more signals are reflected from the surface, and receive movement data from the movement module, wherein the sensor control module determines a snapshot of the surface by calculating a slope of the surface using the times at which the one or more signals are reflected and the movement data,
wherein the robotic vehicle is driven by the drive system to traverse the surface while the control computing system continuously determines a plurality of snapshots of the surface as the position of the robotic vehicle changes to generate a profile of the surface.
2. The system of claim 1, wherein a first sensor of the one or more sensors is mounted on a front portion of the robotic vehicle and a second sensor of the one or more sensors is mounted on a rear portion of the robotic vehicle.
3. The system of claim 1, wherein the one or more distance sensors are arranged linearly longitudinally along a longitudinal axis of the robotic vehicle.
4. The system of claim 1, wherein the one or more distance sensors are arranged linearly along a transverse axis of a vehicle axis of the robotic vehicle.
5. The system of claim 1, wherein the one or more distance sensors are arranged substantially equidistant from each other.
6. The system of claim 1, wherein the distance sensor is disposed on an exterior surface of the robotic vehicle.
7. The system of claim 1, wherein the distance sensor is disposed within the robotic vehicle.
8. The system of claim 1, further comprising an inertial measurement unit housed in the robotic vehicle for capturing orientation data of the robotic vehicle.
9. The system of claim 8, wherein the inertial measurement unit is an accelerometer.
10. The system of claim 1, wherein the movement data includes a speed of the robotic vehicle or a travel distance of the robotic vehicle.
11. The system of claim 1, wherein the control computing system further comprises:
a profile analysis module that configures the processor to calculate respective times of flight (TOFs) of the one or more signals traveling between the sensor and the surface, determine respective slopes of the surface at a given point based on the respective TOFs and the movement data, and store the respective slopes of the surface at the given point in the non-transitory computer-readable storage medium.
12. A system for profiling a surface, the system comprising:
a robotic vehicle having a drive system, at least one wheel, and one or more wheel encoders housed within each wheel for measuring movement of the robotic vehicle as the robotic vehicle is driven by the drive system;
an inertial measurement unit coupled to the robotic vehicle, the inertial measurement unit to measure an angle of the robotic vehicle relative to a direction of gravity;
a control computing system, the control computing system comprising:
a non-transitory computer-readable storage medium,
one or more processors in electronic communication with the inertial measurement unit, each wheel encoder, the robotic vehicle, and the computer-readable storage medium,
one or more software modules comprising executable instructions stored in the storage medium, wherein the one or more software modules are executable by the processor and comprise:
a movement module that configures the processor to receive movement data from the one or more wheel encoders to determine a changing position of the robotic vehicle,
a sensor control module that configures the processor to instruct the inertial measurement unit to determine a first angle relative to gravity at a first location on the surface and to determine a second angle relative to gravity at a second location on the surface,
a contour analysis module that configures the processor to determine an angular offset between the first angle and the second angle and calculate a change in slope between the first position and the second position, receive the movement data from the movement module, and determine a snapshot of the surface between the first position and the second position using the calculated change in slope and the movement data and store the snapshot in the non-transitory computer-readable storage medium,
wherein the robotic vehicle is driven by the drive system to traverse the surface while the control computing system continuously determines a plurality of snapshots of the surface as the position of the robotic vehicle changes to generate a profile of the surface.
13. The system of claim 12, wherein the profile analysis module determines an offset by calculating a sine of an average of the first and second angles multiplied by a distance between the first and second positions measured by the one or more wheel encoders.
14. The system of claim 12, further comprising one or more distance sensors mounted to or within the robotic vehicle to measure a slope of the surface.
15. The system of claim 14, wherein the sensor control module configures the processor to instruct the one or more distance sensors to emit one or more signals toward the surface at respective pulse times, wherein the sensor control module further configures the processor to detect reflections of the one or more signals from the surface using the one or more distance sensors.
Technical Field
The present invention generally relates to systems and methods for profiling surfaces. In particular, the invention relates to vehicle profiling and measuring surfaces in a non-destructive manner.
Background
In the oil and gas industry, storage tanks for crude oil and refinery products play a key role in the hydrocarbon supply chain. Knowing the exact volume of these storage units plays a crucial role when transferring product to and/or from the tanks. Due to variations and aging in external and internal conditions (i.e., temperature) and also due to the weight of the liquid product (i.e., hydrostatic pressure), the tank volume can vary by as much as +/-0.2%. For a 250,000 barrel tank, this variation would result in a volume variation of +/-500 barrel volumes.
Due to the high value of petroleum hydrocarbons, there is a mandatory requirement for calibration of storage tanks. The tank used for the store transfer (custody transfer) must be calibrated so that the volume transferred is known very accurately (e.g., with an error of less than 0.1%). The most common techniques to perform this operation are: manual strapping (API MPMS 2.2A); optical techniques (Optical Reference Line Method ORLM-API Chapter 2.2B), Optical Triangulation (OTM) -API Chapter2.2C (Optical Triangulation Method (OTM) -API Chapter2.2C), Electro-Optical Ranging (EODR) -API Chapter 2.2D (Electro-Optical Ranging Method (EODR) -API Chapter 2.2D)) and liquid calibration (API standard 2555). However, these measurements have been found to be error prone and have other drawbacks. In some cases, the aforementioned testing techniques require tank downtime (e.g., emptying the tank or otherwise temporarily stopping tank operation), which incurs additional costs for the losses incurred. In addition, many of the foregoing testing techniques are invasive in that they require access to the internal volume of the tank and may also be destructive.
Existing methods for tank calibration suffer from significant drawbacks. For example, using current standards, performing a correction may take 1-2 days of work. Therefore, the tank is rarely calibrated, resulting in inaccurate measurements of the actual volume stored in or transferred to and from the tank, which can result in high costs. For example, a conventional time period between corrections may be between five and fifteen years.
What is needed is a system and method for profiling and inspecting surfaces for inspection, calibration, and construction tasks. Additionally, what is needed are systems and methods for correcting tank volume that address limitations associated with the efficiency of performing corrections using existing systems. More specifically, what is needed is a system and method for accurately performing tank calibration that can be deployed and operated in a relatively fast, low cost, and non-invasive manner. What is also needed is a system that can be deployed quickly and on demand and thus facilitates more frequent (e.g., daily or at each filling) detection of changes in tank volume.
It is with respect to these and other considerations that the disclosure herein is presented.
Disclosure of Invention
According to one broad aspect of the present invention, a system and method for generating a profile of a surface is provided. In one or more embodiments, this profile measurement is accomplished using a robotic vehicle.
According to one aspect of the invention, a system for profiling a surface according to one or more embodiments is provided. In one or more embodiments, the system includes a robotic vehicle having a drive system, at least one wheel, and one or more wheel encoders housed within each wheel for measuring movement of the robotic vehicle as the robotic vehicle is driven by the drive system. Further, one or more distance sensors are coupled to the robotic vehicle to measure a slope of the surface. For example, a first sensor may be mounted at a front portion of the robotic vehicle and a second sensor may be mounted at a rear portion of the robotic vehicle. In one or more embodiments, the one or more distance sensors are arranged linearly longitudinally along a longitudinal axis of the robotic vehicle or linearly along a lateral axis of a vehicle axis of the robotic vehicle. The one or more sensors may also be arranged substantially equidistant from each other. In one or more embodiments, the sensor is disposed on an exterior surface of the robotic vehicle. In one or more embodiments, the sensor is disposed within the robotic vehicle. The system for profiling a surface may also comprise one or more inertial measurement units. For example, the inertial measurement unit may be an accelerometer or a gyroscope. The one or more inertial measurement units may be housed within the vehicle or may be attached to an exterior surface of the vehicle.
Continuing with this aspect of the invention, the system additionally comprises a control computing system. The control computing system includes a non-transitory computer-readable storage medium, one or more processors in electronic communication with the one or more sensors, each wheel encoder, the robotic vehicle, and the computer-readable storage medium, and one or more software modules comprising executable instructions stored in the storage medium.
The one or more software modules are executable by a processor and include: a movement module that configures the processor to receive movement data from the one or more wheel encoders to determine a position of the robotic vehicle; and a sensor control module that configures the processor to instruct the one or more distance sensors to transmit one or more signals towards the surface at respective pulse times and detect times at which the one or more signals are reflected from the surface, and to receive movement data from the movement module, wherein the sensor control module determines a snapshot of the surface by calculating a slope of the surface using the times at which the one or more signals are reflected and the movement data. In one or more embodiments, the movement data includes a speed of the robotic vehicle or a travel distance of the robotic vehicle. In one or more embodiments, the control computing system further includes a profile analysis module that configures the processor to calculate respective times of flight (TOF) of the one or more signals traveling between the sensor and the surface, determine a respective slope of the surface at a given point based on the respective TOF and the movement data, and store the respective slope of the surface at the given point in the non-transitory computer-readable storage medium. The robotic vehicle is then driven by the drive system to traverse the surface while the control computing system continuously determines a plurality of snapshots of the surface as the position of the robotic vehicle changes to generate a profile of the surface.
In another aspect of the invention, a system for profiling a surface in accordance with one or more embodiments is provided. In one or more embodiments, the system includes a robotic vehicle having a drive system, at least one wheel, and one or more wheel encoders housed within each wheel for measuring movement of the robotic vehicle as the robotic vehicle is driven by the drive system. The system further includes an inertial measurement unit coupled to the robotic vehicle for measuring an angle of the robotic vehicle relative to a direction of gravity. In one or more embodiments, the system includes one or more distance sensors mounted to or within the robotic vehicle to measure the slope of the surface.
Continuing with this aspect of the invention, the system additionally comprises a control computing system. The control computing system includes a non-transitory computer-readable storage medium, one or more processors in electronic communication with the one or more sensors, each wheel encoder, the robotic vehicle, and the computer-readable storage medium, and one or more software modules comprising executable instructions stored in the storage medium, wherein the one or more software modules are executable by the processor.
Continuing with this aspect of the invention, the one or more software modules include a movement module, a sensor control module, and a contour analysis module. The movement module configures the processor to receive movement data from the one or more wheel encoders to determine a changing position of the robotic vehicle. The sensor control module configures the processor to instruct the inertial measurement unit to determine a first angle with respect to gravity at a first location on the surface and to determine a second angle with respect to gravity at a second location on the surface. In one or more embodiments, the sensor control module configures the processor to instruct the one or more distance sensors to emit one or more signals toward the surface at respective pulse times, wherein the sensor control module further configures the processor to detect reflections of the one or more signals from the surface using the one or more distance sensors. The contour analysis module configures the processor to determine an angular offset between the first angle and the second angle and calculate a change in slope between the first position and the second position, receives the movement data from the movement module, and uses the calculated change in slope and the movement data to determine a snapshot of the surface between the first position and the second position and stores the snapshot in the non-transitory computer-readable storage medium. In one or more embodiments, the profile analysis module determines the offset by calculating a sine of an average of the first angle and the second angle multiplied by a distance between the first position and the second position measured by the one or more wheel encoders. The robotic vehicle is then driven by the drive system to traverse the surface while the control computing system continuously determines a plurality of snapshots of the surface as the position of the robotic vehicle changes to generate a profile of the surface.
Drawings
The present invention is illustrated in the figures of the accompanying drawings which are meant to be exemplary and not limiting, in which like references are intended to refer to like or corresponding parts, and in which:
FIG. 1 presents a high-level diagram illustrating an exemplary configuration of a system for profiling a surface of an exemplary storage container in accordance with one or more embodiments;
FIG. 2 presents a block diagram illustrating an exemplary configuration of a control computing system in accordance with one or more embodiments;
FIG. 3 presents a side view schematically illustrating an exemplary robotic vehicle for profiling a system according to one embodiment;
FIG. 4 is a flow diagram illustrating a routine illustrating a system and method for profiling a surface in accordance with one or more embodiments;
FIG. 5 presents a side view schematically illustrating an exemplary robotic vehicle for profiling a system according to another embodiment;
FIG. 6 presents a side view schematically illustrating an exemplary robotic vehicle for profiling a system according to another embodiment; and is
Fig. 7 presents a front view schematically illustrating an exemplary robotic vehicle for profiling a system according to another embodiment.
Detailed Description
Throughout this specification, terms may have meanings beyond the meanings explicitly set forth herein to indicate or imply subtle differences in context. Likewise, the phrase "in one embodiment" as used herein does not necessarily refer to the same embodiment, and the phrase "in another embodiment" as used herein does not necessarily refer to a different embodiment. Similarly, the phrase "one or more embodiments" as used herein does not necessarily refer to the same embodiment, and the phrase "at least one embodiment" as used herein does not necessarily refer to a different embodiment. It is intended that claimed subject matter encompass combinations of all or portions of the example embodiments.
The present disclosure details systems and methods for generating a profile of a surface. Because current methods in the field of surface profilometry are not highly efficient or effective in surface profilometry using robotic inspection devices without the use of a remote base station to process the collected data, the present systems and methods employ hardware, software, and/or a combination of both to provide a surface profilometry system that does not require remote processing or a base station. In particular, the present disclosure details an improved robotic system in which one or more sensors are arranged on the robot and configured to collect robot orientation data relative to a surface as the robot moves along the surface, so as to generate a "snapshot" of the surface, in other words, capture and optionally further generate data regarding the orientation of the robot at a given location on the surface. Advantageously, a device having a sensor with a broader response spectrum than an optical capture device (e.g., a camera) may be used to capture and/or generate the "snapshots" disclosed herein. The robot orientation data includes a measurement of the inclination of the vehicle relative to the direction of gravity as the vehicle traverses along the surface. The system then merges these snapshots under the control of a programmed processor to provide the contour of the surface. Although the systems and methods described herein may be used for profiling any type of surface, they have particular application in the fields of surface inspection, tank calibration, construction and shipbuilding, for example.
In one aspect, the system disclosed herein includes an accelerometer or other inertial measurement unit integrated into a robotic vehicle that also includes one or more distance sensors for rapidly profiling a surface without an external reference. The system herein uses a processor executing code that configures the processor for the purpose to measure surface curvature and calculate the absolute offset of the vehicle position relative to the surface. The measured offset can be used to calculate the magnitude of the surface deformation and thereby perform a profile measurement of the surface. While external references may be added to the system to improve accuracy, the vehicle may generate the surface profile using only on-board sensors and gravity traction. In one or more embodiments, the robotic vehicle includes wheel encoders that again use a processor executing code that configures the processor for the purpose to determine movement of the vehicle over the surface.
Thus, in some configurations, the system 100 may include one or more robotic vehicles or "robots" configured to automatically and semi-automatically traverse a surface being contoured. For example, as shown in fig. 1, a robot 110 is deployed on a cylindrical container 105. As will be understood by those skilled in the art of robotics, the robot 110 is a mobile robotic device that includes a body and a drive system for moving the robot during operation. The drive system includes at least one wheel and at least one motor for powering the at least one wheel. The wheels may be driven wheels, omni wheels, or other types of robotic wheels known in the art. The robot may be powered by, for example, a solar cell, a battery, or any other suitable power source. The robot may contain functional hardware components specifically designed to facilitate performing operational tasks, such as sensors for detecting the height, position, orientation, etc. of the robot. In addition to profiling the surface, the operational task may also include, for example, performing surface inspection (e.g., wall thickness measurement, surface geometry) or coating porosity measurement. The robotic hardware may also include on-board sensors and accelerometer/inertial measurement units used in the surface profilometry process, and additionally or alternatively, components suitable for transporting and deploying other devices configured to operate in a standalone fashion. In one or more embodiments, the robot 110 includes one or more distance sensors 120. For example, the distance sensor may be an optical sensor, an ultrasonic sensor, a LIDAR or other sensor capable of determining distance. The robot 110 may include electronic circuitry within the body including memory and/or a computer readable storage medium configured to store information related to the operation of the robot, such as configuration settings and one or more control programs and a processor that facilitate performance of a container volume correction operation, as previously described. System 100 also contains one or more software modules comprising executable instructions stored in the storage medium and executable by the processor.
Referring now to FIG. 2, a control computing system 200 is depicted in accordance with one or more embodiments. As shown, controlling computer system 200 may be arranged with various hardware and software components for implementing the operations of system 100, including a
Preferably,
In one or more embodiments, the control computing system 200 also includes a
One or
Included among
In one or more embodiments, the sensor control module 270 configures the
In one or more embodiments, each of the distance sensors is instructed to transmit a signal simultaneously. In other embodiments, each of the distance sensors is instructed to transmit signals at alternating intervals. For example, the sensor control module 270 may cause the distance sensors to transmit signals based on the current vehicle speed and direction, such that when each sensor is estimated to be passing a particular location, the respective sensor data may be compared to refine the accuracy of the surface measurements.
In one or more embodiments, the sensor control module 270 configures the processor to instruct the inertial measurement unit to determine a first angle relative to the gravity vector at a first location and to determine a second angle relative to the gravity vector at a second location once the vehicle has moved from the first location to the second location. In this way, the relative inclination of the vehicle with respect to rest caused by the surface can be obtained, and further information about the topology of the surface can be obtained in turn.
The movement module 272 configures the processor to receive movement data from one or more wheel encoders to determine the position of the robotic vehicle. The wheel encoders provide the ability to measure the amount of each wheel turn of the vehicle and thereby provide an indicator of the distance traveled by the vehicle. The mobile module receives information about the wheel sizes from the memory and, in conjunction with a determination of the amount each wheel of the vehicle has turned, may calculate the distance traveled by the vehicle.
In one or more embodiments, the profile analysis module 274 configures the processor to calculate respective times of flight (TOF) of one or more signals traveling between the respective distance sensor and the surface. This may be combined with the operation of the sensor control module 270. The profile analysis module 274 then determines the respective slopes of the surfaces at the given points based on the respective TOF and the movement data provided by the movement module 272. Thereby, the topology of the surfaces can be stitched together. The contour analysis module can also store the respective slopes of the surfaces at a given point in a non-transitory computer-readable storage medium (e.g., in memory).
In one or more embodiments, the profile analysis module 274, in conjunction with the sensor control module 270 and/or the inertial measurement unit, configures the processor to determine an angular offset between a first angle and a second angle, where the first angle and the second angle are measured as respective positions of the vehicle relative to a gravity vector at two different vehicle positions. The profile analysis module 274 may store the respective angles measured with respect to the surface at each given point in a non-transitory computer-readable storage medium (e.g., in a non-volatile memory device). In one or more embodiments, the offset is determined relative to a longitudinal axis of the robotic vehicle.
An angular offset between the first angle and the second angle may be used to determine the profile of the surface. Since the respective angles are indicative of measurements of the inclination of the robotic vehicle relative to the surface, the profile analysis module 274 can use this information to determine the profile of the surface. For example, if the inertial measurement unit is placed in the center of the robotic vehicle and the wheels positioned at the front of the vehicle begin to move up the incline, the inertial measurement unit will measure the tilt angle relative to the rest of the vehicle. Thereafter, the profile analysis module 274 may take the angle data in conjunction with the wheel encoder movement data and determine the slope of the measured angle at which the surface has the distance provided by the movement data.
It can also be said that the program code of
It should be appreciated that in some demonstrative embodiments, one or more of
Additionally, it should be noted that other information and/or data related to the operation of the systems and methods of the present invention, such as various control programs for operating system 100 (e.g., sensors, encoders, transducers) and/or the robot during use, may also be stored on
While an advantage of one or more embodiments herein is that the control computing system 200 is able to perform surface contour measurements without the need for remote input or processing, in other embodiments, the
Referring now to FIG. 3, a
In one or more embodiments, the
As shown in exemplary fig. 3, a
It should be appreciated that the distance traveled by the
The
Preferably, included among the software modules are a sensor control module, a movement module, and a contour analysis module. The sensor module configures the processor to instruct the one or more distance sensors to transmit one or more signals at respective pulse times, wherein the sensor control module further configures the processor to detect an arrival of the one or more signals using the one or more distance sensors. The movement module configures the processor to receive movement data from the one or more wheel encoders to determine a position of the robot. The profile analysis module configures the processor to calculate respective times of flight (TOFs) of the one or more signals traveling between the sensor and the surface, determine respective slopes of the surface at a given point based on the respective TOFs and the movement data, and store the respective slopes of the surface at the given point in the non-transitory computer-readable storage medium. As the robotic vehicle moves from one location to another on the surface, the
The operation of the exemplary surface
The routine 400 begins at
At
After receiving this information, the computational control system calculates the respective slopes of the surfaces at the current location based on the respective TOF (step 430). For example, a longer measured TOF at the second location compared to the measured TOF at the first location indicates that the surface is at a lower elevation at the second location than at the first location. At
Once the robotic vehicle has made measurements along the entire surface to be contoured, the computational control system uses the data collected from each location to contour the surface (step 445). The profile measurement may involve solving equations based on the received TOF and movement data to determine how the surface looks. In one or more embodiments,
Referring now to fig. 5, a system 500 for profiling a surface 505 in accordance with one or more embodiments is provided. The system 500 includes a robotic vehicle 510 having a plurality of distance sensors 520 aligned longitudinally linearly along a longitudinal axis of the vehicle, each sensor configured to measure a distance 530A, B, C to a surface 505, and the like, as described elsewhere herein. The longitudinal axis of the vehicle may be coaxial with the center frame of the vehicle 510. In this manner, each of the plurality of distance sensors 520 generates a separate data stream. Each distance sensor 520 may be calibrated to measure distance at a different rate or with a different accuracy (e.g., at regular time intervals). For example, one sensor may be configured to collect distance measurements every 0.001 seconds, while another sensor may be configured to collect distance measurements every 0.01 or 0.1 seconds. Similarly, each distance sensor may be individually configured to accurately measure the distance to centimeters, millimeters, or the like. The number of distance sensors 520 may be increased to provide a finer "snapshot" measurement. In one or more embodiments, the distance sensors 520 are arranged substantially equidistant from each other. In one or more embodiments, the distance sensor 520 is disposed on an exterior surface of the robotic vehicle 510. In one or more embodiments, a distance sensor 520 is disposed within the robotic vehicle 510.
To accommodate the plurality of distance sensors 520, the robotic vehicle 510 is elongated relative to the
The robotic vehicle 510 also houses an accelerometer 550 for capturing vehicle orientation data. Although accelerometers are contemplated herein, other inertial measurement units (e.g., gyroscopes) may be implemented. The accelerometer 550 is calibrated with respect to the direction of gravity, which means that the accelerometer measures the horizontal and/or vertical offset of the robotic vehicle 510 as it traverses the surface. This provides additional data beyond the distance measurement 530 itself that may be used by the profile analysis module 274 to determine the profile of the surface 505. In this way, the control computing system 540 may adjust the captured "snapshot" of the surface to improve profile measurement accuracy. In one or more embodiments, the accelerometer 550 is positioned substantially centrally on the robotic vehicle 510 in the x and y planes.
In one or more embodiments, a plurality of accelerometers 550 are disposed on or within the robotic vehicle 510. In one or more embodiments, the accelerometers 550 are arranged substantially equidistant from each other.
Referring now to fig. 6, a
More specifically, the
To improve measurement accuracy, the
Although
Turning now to fig. 7, a
In one or more embodiments, accuracy may be further improved by including a first set of
In one or more embodiments, the surface profile measurement implements a simultaneous localization and mapping algorithm (SLAM) to map the entire surface of an object (e.g., a tank wall) automatically and with tolerances to a certain degree of accuracy. The SLAM algorithm is a real-time positioning system that acquires environmental sensor data received at the vehicle in real-time and compares the data to previously known data in order to approximate the geometry of the current environment while tracking the trajectory of the vehicle within the environment. According to embodiments disclosed herein, robotic vehicles are deployed that can access SLAM technology to automatically generate 2D ("spread out") or 3D contours of a surface with high accuracy. SLAM techniques may provide greater accuracy than LIDAR techniques, depending on the sensor and system sensitivity. In this manner, the systems and methods described herein are not limited to the linear profile or the 2D profile associated with fig. 7.
Additionally, in one or more embodiments, the systems and methods herein include a laser reference device external to the robotic vehicle for estimating vehicle position. The laser reference device is preferably positioned at a known distance from a known location of the surface (e.g., the center of the surface). In operation, the laser reference device would emit a vertical reference laser line (the beam has a linear width in the horizontal direction) rather than being oriented parallel to the surface. The light from the laser reference device is continuously detected by a sensor (e.g., an optical sensor) coupled to the robotic device as the robotic device moves along the surface. Any protrusions, depressions and unevenness on the surface will shift the position at which the sensor captures and detects the laser radiation emitted by the laser reference device. The measured offset can be used to calculate the magnitude of the deformation of the surface from a reference calculation made at the surface. Since the calculation depends on the optical sensor detecting the exact reading of the position of the laser light, this method depends to a significant extent on the design of the optical sensor.
Fig. 1 to 7 are conceptual diagrams allowing the explanation of the present invention. Those skilled in the art will appreciate that aspects of embodiments of the present invention may be implemented in hardware, firmware, software, or a combination thereof. In such embodiments, the various components and/or steps would be implemented in hardware, firmware, and/or software to perform the functions of the present invention. That is, the same piece of hardware, firmware, or software module may perform one or more of the illustrated blocks (e.g., components or steps).
In software embodiments, computer software (e.g., programs or other instructions) and/or data is stored on a machine-readable medium as part of a computer program product and loaded into a computer system or other device or machine via a removable storage drive, hard drive, or communications interface. Computer programs (also called computer control logic or computer readable program code) are stored in main and/or secondary memory and executed by one or more processors (controllers, etc.) to cause the one or more processors to perform the functions of the present invention as described herein. In this document, the terms "machine-readable medium," "computer program medium," and "computer-usable medium" are used generally to refer to media such as Random Access Memory (RAM), Read Only Memory (ROM), removable storage units (e.g., magnetic or optical disks, flash memory devices, etc.); a hard disk; and the like.
Notably, the above figures and examples are not intended to limit the scope of the present invention to a single embodiment, as other embodiments are possible by interchanging some or all of the elements described or illustrated. Furthermore, where certain elements of the present invention may be partially or fully implemented using known components, only those portions of such known components that are necessary for an understanding of the present invention are described, and detailed descriptions of other portions of such known components are omitted so as not to obscure the invention. In this specification, unless explicitly stated otherwise herein, an embodiment showing a single component should not necessarily be limited to other embodiments containing multiple of the same component, and vice versa. Moreover, applicants do not intend for any term in the specification or claims to be ascribed an uncommon or special meaning unless explicitly set forth as such. Further, the present invention encompasses present and future known equivalents to the known components referred to herein by way of illustration.