The field of the subject matter is robotic platforms and robots for nondestructive testing applications, including their production and uses thereof.
While airplanes are regularly considered one of the safest methods of travel, this is, to a large extent, due to tremendous design and maintenance efforts. Airplanes are in service for very long periods, often longer than originally planned, due to the high costs of new airplanes. During maintenance periods, visual inspection is performed and in rare cases with special equipment such as X-ray technology. However, visual inspection is limited to the detection of surface flaws, and X-rays are dangerous and costly. While these strategies have still been used for many years for conventionally designed aircrafts, with modern composite components, visual inspection is no longer adequate because defects are often hidden from the outside. In order to prevent growth of potentially existing defects inside the airplane components, segments are often preemptively replaced after certain flight intervals. With nondestructive testing (NDT) methods, such defects could be detected at an early stage, thus preventing catastrophic failure and eliminating the unnecessary replacement of intact components. Research has shown that guided ultrasonic wave-based methods allow for finding damages in complex composite components (e.g. [1,2]). However, it is important to localize damages with respect to other features in order to obtain a complete analysis and generate recommendations for maintenance. Hence, it is important to identify all features of the structure and generate a map, including any damages. This has not been addressed in detail in the literature yet.
Nondestructive testing (NDT) are methods to inspect specimens without destroying or disassembling the physical specimen. In the method used in this work, guided ultrasonic waves are transmitted into a structure, and the received waves may be altered, thus showing information about a defect or anomaly in its path. Additionally, NDT can be used for detecting structural geometries. This information can be used to generate maps of the structure, including the damage locations and structural boundaries. Currently, NDT is mostly conducted manually by human operators. If a robot is able to take NDT measurements and analyze the data to generate a map, the robot can reverse engineer the structure, detect damages, and use the information to focus on the affected area or call attention to an operator for closer inspection. In this work, a robot is designed and developed for the purpose of including an NDT module to conduct measurements on aluminum and composites plates. Additionally, a path planning algorithm is implemented on an off-the-shelf robot platform with an indoor navigation system to demonstrate the viability of autonomous drive without using GPS. Finally, NDT experiments are conducted to detect structural boundaries of the plates and the stiffened area. The various aspects of this work are for the eventual integration and development of a robot platform to automate the NDT process. An application of using NDT for mapping is to check airplane wings for defects during their maintenance sessions, in which case the stiffeners and ribs inside the wings can be located and checked against (a priori) engineering drawings.
For nondestructive testing, ultrasonic waves are transmitted into a specimen using a transducer. Surfaces and structural features of the specimen can restrict the movement of the waves, in which case these features are considered to be “wave guides.” In this work, the test specimens are thin plates, so the top and bottom surfaces of the plate are guiding waves. Such Lamb waves consist of symmetric and antisym metric modes.[23] Lamb waves have fundamental modes of A0 and S0 but have an infinite number of modes. These modes only exist at certain frequencies and each mode has different group and phase velocities, so it is necessary to refer to group and phase velocity dispersion plots. Group velocity of the wave group is the propagation velocity, and phase velocity is the velocity of an individual wave. These dispersion plots will be necessary for further analysis.
Lamb wave propagation in isotropic plates as well as in more complex media, e.g. isotropic multi-layered plates, have been studied by numerous authors (e.g. [3, 4, 5]). Furthermore, it has been shown that damages in complex composite components can be identified using Lamb wave-based techniques, in particular the detection of delaminations between individual plies [1, 2, 6, 7, 8]. While NDT methods have generally been used to detect failures in a structure, they can also be used to detect structural geometries [9]. For example, an incident wave reflects at free ends generally without any mode conversion if the excitation frequency is below the first cut-off frequency [9, 10, 11, 12, 13]. Above this frequency, it has been shown how obliquely incident Lamb waves from a free end can scatter into multiple waves Santhanam and Demirli [14]. If the reflected waves are recorded, edges and step discontinuities may be localized through a time-of-flight analysis. In order to apply a time-of-flight analysis of the measured waves, the dispersion behavior has to be well-understood. For this purpose, many different (numerical) techniques have been developed [15, 16, 17, 18] to determine the Lamb wave propagation characteristics in isotropic and anisotropic materials.
For the purposes of this information, the specimen is assumed to be of an unknown size, for which the edges and stiffened area are to be determined. Piezoelectric transducers are set up in a pitch-catch configuration in locations on a grid along a stiffened plate. As shown in
Robotic platforms are disclosed that include: at least one robot or robotic device, at least one computer-based control system, wherein the system is at least in part located on the at least one robot, at least one communications system, wherein the communications system is designed to communicate between the computer-based control system and the at least one robot, and at least one evaluation system that is designed to implement and process at least one nondestructive testing method.
Methods of evaluating a surface include: providing a robotic platform that comprises: at least one robot or robotic device, at least one computer-based control system, wherein the system is at least in part located on the at least one robot, at least one communications system, wherein the communications system is designed to communicate between the computer-based control system and the at least one robot, and at least one evaluation system that is designed to implement and process at least one nondestructive testing method; providing a structure to be tested; and utilizing the robotic platform to evaluate the structure through the implementation of at least one nondestructive testing method.
As shown in
As disclosed and discussed in the Examples Section, once the measurement is taken, the data is post processed and analyzed using the NDT algorithms to map the structure (currently, rectangular plates).
The NDT module consists of an air-coupled transducer and circuitry for either transmission mode, receiver mode, or both. The module is developed from off-the-shelf components and the circuits are based off work by Pertsch (see
Nondestructive testing (NDT) are methods to inspect specimens without destroying or disassembling the physical specimen. In the method used in this work, guided ultrasonic waves are transmitted into a structure, and the received waves may be altered, thus showing information about a defect or anomaly in its path. Additionally, NDT can be used for detecting structural geometries. This information can be used to generate maps of the structure, including the damage locations and structural boundaries.
Ultrasound sensor technology has a myriad of uses in robotics. Mobile robots are used for traversing terrains as planetary rovers, as hotel butlers, or as vacuum cleaners. For these kinds of mobile robots, ultrasound is the conventional technology used for mapping, navigation, obstacle avoidance, and localization. In medicine and healthcare, the most familiar application of ultrasound is sonography, showing objects inside the body.
Robots can autonomously conduct ultrasound examinations, replacing physicians who are likely to experience repetitive strain injuries [4]. Similarly, ultrasound can be used for nondestructive testing (NDT), for which a specimen can be inspected for damages without destroying or disassembling the original shape. Guided waves are transmitted by a transducer through air or a structure, and, by the time-of-flight principle, the received signal can show if there is an obstacle or defect in the waves' paths.
It is important to study ultrasound sensor technology because of its applications, especially in autonomous systems. Autonomous mobile robots can use ultrasound sensors for navigation and mapping as well as localization. To build a map for navigation, the robot can use the ultrasound waves to detect and remember the robot's environment. Localization is the process of identifying its location within the map and environment. With these two functions, an autonomous robot is able to determine where it is currently is located within the map, where it can go, and how it can get there.
While airplanes are regularly considered one of the safest methods of travel, this is, to a large extent, due to tremendous design and maintenance efforts. Airplanes are in service for very long periods, often longer than originally planned, due to the high costs of new airplanes. During maintenance periods, visual inspection is performed and in rare cases with special equipment such as X-ray technology. However, visual inspection is limited to the detection of surface flaws, and X-rays are dangerous and costly. While these strategies have still been used for many years for conventionally designed aircrafts, with modern composite components, visual inspection is no longer adequate because defects are often hidden from the outside. In order to prevent growth of potentially existing defects inside the airplane components, segments are often preemptively replaced after certain flight intervals.
Ultrasound also has been used in NDT of structures, such as airplane wings, in which ultrasonic waves are transmitted into a specimen using a transducer. Surfaces and structural features of the specimen can restrict the movement of the waves, in which case these features are considered to be “wave guides.” Lamb waves exist in thin plates and have symmetric and antisymmetric modes. The fundamental modes are A0 and S0, and the modes exist at certain frequencies. They can also convert from symmetric to antisymmetric, and vice versa [5].
Since defects can develop inside the wing during use, it is important to conduct tests during maintenance periods when the airplane is in the hanger. It is impractical to disassemble the wing to do this because of the time and complexity of disassembling, testing, and reassembling for the next flight. However, it is impossible to visually see all the defects from the surface. While there may be external scratches and cracks seen from the outside, the defects that NDT can detect include cracks from fatigue in metals, delamination in composite materials, or even the results of impacts from bird or drones. With NDT methods, such defects could be detected at an early stage, thus preventing catastrophic failure and eliminating the unnecessary replacement of intact components. For example, after the Southwest Airlines tragedy, the FAA requires ultrasonic NDT for engine fan blades.
Currently, ultrasound testing is conducted by an operator and only in through-thickness mode, which takes a long time and also depends on the operator's skill. By automating this process with robots to take measurements using guided waves from the same surface, the testing time can be reduced, and the human error element can also be removed. Hence, it is important to develop an autonomous robot that can automate the NDT process; this requires a robotic platform that can navigate around a test structure, an NDT module onboard such that it can conduct the tests, and algorithms to conduct NDT, analyze the data to identify features and generate a map including any damages.
Currently, NDT is mostly conducted manually by human operators. If a robot is able to take NDT measurements and analyze the data to generate a map, the robot can reverse engineer the structure, detect damages, and use the information to focus on the affected area or call attention to an operator for closer inspection. At least one robot is designed and developed for the purpose of including an NDT module to conduct measurements on aluminum and composites plates. Additionally, a path planning algorithm is implemented on an on-the-shelf robot platform with an indoor navigation system to demonstrate the viability of autonomous drive without using GPS.
Research has shown that guided ultrasonic wave-based methods allow for finding damages in complex composite components (e.g. [1, 2]). However, it is important to localize damages with respect to other features in order to obtain a complete analysis and generate recommendations for maintenance. Hence, it is important to identify all features of the structure and generate a map, including any damages. Through the use of contemplated nondestructive testing (NDT) methods, such defects as those described herein could be detected at an early stage, thus preventing catastrophic failure and eliminating the unnecessary replacement of intact components.
A contemplated automated robot is a robotic platform designed and implemented to conduct nondestructive testing (NDT), methods already described herein that are used to evaluate a structure for damages that cannot be visually detected from the surface. It is capable of driving autonomously with its path planning algorithms. The platform includes an NDT module with which measurements can be taken on the structure that it is testing. In addition to determining damages in the specimen, the data is used for edge detection and stiffener detection, which can generate a map of the specimen as well as the damages located within.
Specifically, an automated robot platform is described herein that includes: at least one robot or robotic device, at least one computer-based control system, wherein the system is at least in part located on the at least one robot, at least one communications system, wherein the communications system is designed to communicate between the computer-based control system and the at least one robot, and at least one evaluation system that is designed to implement and process at least one nondestructive testing method. In contemplated embodiments, the at least one communications system is designed to communicate remotely between the at least one robot and either home base and/or the user.
Contemplated robotic platforms comprise at least one communications system, wherein the at least one communications system is designed to communicate remotely between the at least one robot and a home base component, a user, or a combination thereof.
Contemplated robotic platforms and systems further comprise a structure that is separate and independent from the robotic platform, wherein the structure has at least one surface.
Contemplated robotic platforms comprise at least one evaluation system, wherein the at least one evaluation system evaluates the structure for at least one damaged area, at least one defect, or at least one additional structural problem that cannot be visually detected from the surface of the structure. In some contemplated embodiments, the at least one evaluation system collects measurements on the structure. In other contemplated embodiments, the at least one evaluation system conducts nondestructive tests on the structure. In contemplated embodiments, the at least one evaluation system collects at least one data point that will be used to produce a map of the structure. Contemplated maps of the structure shows at least one edge, at least one defect, at least on damaged area, at least one additional structural problem, or a combination thereof. In yet other contemplated embodiments, the at least one evaluation system collects at least one data point that will be used for stiffener detection on the surface. Contemplated at least one additional structural problem comprises a structurally weak area, an area that comprises an undesirable or unsuitable material, or a combination thereof.
Contemplated robotic platforms comprise at least one computer-based control system, wherein the at least one computer-based control system comprises at least one path-planning algorithm. In some contemplated embodiments, the at least one path-planning algorithm directs the at least one computer-based control system to drive the at least one robot or robotic device autonomously.
Contemplated embodiments of the at least one robot comprises a wheeled robot or a robot that is mobile by any other suitable means or methods. In some contemplated embodiments, the at least one robot comprises at least one sensor.
In addition, methods of evaluating a surface include: providing a robotic platform that comprises: at least one robot or robotic device, at least one computer-based control system, wherein the system is at least in part located on the at least one robot, at least one communications system, wherein the communications system is designed to communicate between the computer-based control system and the at least one robot, and at least one evaluation system that is designed to implement and process at least one nondestructive testing method; providing a structure to be tested; and utilizing the robotic platform to evaluate the structure through the implementation of at least one nondestructive testing method.
With respect to contemplated embodiments, the at least one robot may comprise a wheeled robot or a robot that is mobile by any other suitable means or methods. Contemplated robots are capable of being controlled remotely by a user and serves as the eventual platform for a fully integrated NDT, mapping, and path planning system. The autonomous drive and path planning algorithms are implemented on an iRobot Create 2 wheeled robot platform. In addition to its basic setup, additional sensors (e.g. inertial measurement unit and indoor navigation system) are added to execute path planning. It is outfitted with an NDT module to perform NDT experiments as a transmitter or receiver. The NDT module demonstrates the proof-of-concept that NDT can be conducted without using benchtop instrumentation and eventually with robots.
NDT experiments are conducted and disclosed herein to detect structural boundaries of the plates and the stiffened area. The various aspects disclosed are for the eventual integration and development of a robot platform to automate the NDT process. An application of using NDT for mapping is to check airplane wings for defects during their maintenance sessions, in which case the stiffeners and ribs inside the wings can be located and checked against (a priori) engineering drawings.
Contemplated robotic platforms can be developed—in whole or in part—from off-the-shelf components, as well as from in-house designed and manufactured parts. In at least one contemplated embodiment, the overall envelope dimensions are 6″ by 6″ by 6″. In at least one contemplated embodiment, the at least one robot comprises three wheels, two of which are driven, and one is a free-rolling wheel (e.g. castor wheel). There may be multiple sensors on the at least one robot, which may comprise infrared cliff sensors located at the front and rear of the robot, ultrasonic rangefinders to detect obstacles in front of the robot, an inertial measurement unit (IMU), and an indoor navigation system.
Contemplated robots may be controlled by a microprocessor (e.g. Raspberry Pi) for its high-level controls and a microcontroller (e.g. Arduino) for its low-level controls and sensor hub. Additionally, there is an NDT module, which may include a transducer that is mounted to the side of the robot chassis. A contemplated robot travels using its path planning algorithms, which navigate the transducer to a target location, where it can perform the contemplated nondestructive testing.
As disclosed and discussed in the Examples Section, once the measurement is taken, the data is post processed and analyzed using the NDT algorithms to map the structure (currently, rectangular plates).
For edge detection, the peak of the second wave packet is considered. Using the time-of-flight (TOF) principle, the reflection path distance can be evaluated. There are four possibilities for each measurement since the data is nondirectional. By using trigonometry, the possible reflection locations can be determined and plotted to generate an edge map. Then, line-fitting techniques are used to finalize the experimental edge of the specimen.
For stiffener detection, the peak of the first wave packet is considered. Similarly, using TOF, the distance of the direct path is calculated. The smallest values are used to plot the stiffened area. Currently, this method gives a general region of where the stiffener is located but further analysis using previously excluded data can present the true location with higher resolution.
The NDT module consists of an air-coupled transducer and circuitry for either transmission mode, receiver mode, or both. The module is developed from off-the-shelf components and the circuits are based off work by Pertsch (see
An air-coupled transducer is mounted to a goniometer for accurate angular positioning. For the transmission/amplification circuit, a pulser board is used to transmit the signal, which is programmed through a software interface. The transducer is connected to the board and transmits the signal into the specimen. On the receiving side, a conditioning board is designed off of the work by Pertsch. Then, the filtered signal is passed to a microcontroller, which has an analog-to-digital (ADC) converter.
This robot is able to drive autonomously to user-defined waypoints, has an NDT module with an ultrasonic transducer, and relevant circuitry to conduct NDT. The NDT measurements are taken from the same surface (instead of the through-thickness method). By using Lamb waves, the waves are able to travel farther distances and cover more space, thus reducing the time for inspection. Additionally, the edge and stiffener detections algorithms analyze the NDT data to generate a map for the robot to localize itself and locate any damages or structures within the same map.
Currently, many NDT processes are manually performed by a human operator, which takes much time and includes variability depending on the operator. By automating the process, the time to take measurements, labor costs, and error and variability decreases. Additionally, by building its own map, the robot is able to localize itself on any specimen without the need for an a priori map in its system but can compare its map to an existing map or engineering drawing of the specimen.
Guided Ultrasonic Wave Propagation and Scattering in Plates
For the successful application of ultrasonic NDT, precise knowledge of wave propagation characteristics for the structure at hand is crucial. For a homogeneous, isotropic, linearly elastic plate, the Lamb wave dispersion relations are also well known and are typically separated into symmetric and anti-symmetric wave motion [19, 20]. In addition to a finite number of real roots (corresponding to propagating waves) at a given frequency, the dispersion equations also have an infinite number of complex roots. Some of these roots are purely imaginary while others have both real and imaginary parts. The imaginary roots are associated with non-propagating waves while the complex roots give rise to evanescent waves, which propagate and decay with distance. The significance of the complex roots in the near-field of real and virtual sources has previously been addressed [9, 10, 11]. However, as in this paper, measurements are assumed to be taken in the far-field, and only propagating waves are considered.
Though it has been shown that mode conversion can generally occur from oblique incident waves at free edges by Santhanam and Demirli [14], this only has to be considered above the first cut-off frequency. Hence, in order to simplify signal processing, in this work, waves are induced well below below the first assumed cut-off frequency. On the other hand, Lamb waves generally reflect, transmit, and convert at stiffeners. In addition, waves propagating through the stiffened region are likely to be altered due to a change in propagation velocities. As has been shown by Schaal et al. [21], there are two possibilities: the stiffened region either forms a new, thicker waveguide (strong bonding), or waves propagate separately in the base plate and the stiffener (weak bonding). In this work, it is assumed that the stiffener is strongly bonded to the base plate, and the stiffened region forms a new, thicker waveguide, altering the wave velocities accordingly.
Experimental Setup
The general experimental setup is shown in
In order to induce guided Lamb waves in the investigated plate structures, a transient signal is generated by a waveform generator (Keysight 33512B). The signal consists of a 3-cycle Hann-windowed sinusoidal tone burst at f=150 kHz, as shown in
For the first measurements, the transmitting disc is placed at (25, 20) and the receiving disc is placed at (175, 20), which yields a direct path length of 150 mm. It should be noted that all lengths are in millimeters unless otherwise specified. Then, the transmitter remains in place while the receiver is moved to (175, 60). Next, the transmitter is moved to (25, 60), and the receiver takes measurements from three locations: (175, 20), (175, 60), and (175, 100). This pattern is continued for new x coordinates of the transmitter, at x=75 mm, x=125 mm etc.
In addition, a reference face-to-face measurement is performed in order to identify the time delay in the measurement equipment. The recorded signal is shown in
Signal Processing
The captured signals and corresponding transducer locations are imported on a workstation with MATLAB for further processing. It should be noted that due to the large amount of conducted measurements, the data is down-sampled to a sampling frequency of 5 MHz in order to minimize the required memory.
The algorithm developed in this work is based on the envelope function of the recorded signal similar to the algorithm used by Schaal et al. [22]. To this end, the Hilbert transform is used to calculate the analytic signal. When the absolute value of the analytic signal is taken, the envelope function is derived. Once the envelope functions are determined, a threshold is manually defined for each run. Next, a local maximum search is implemented for each segment of values above the threshold. Through this procedure, the individual wave peaks are identified. Using the principle of time-of-flight, the wave path lengths d are determined from the peak times tp. To this end, the group velocities are determined for an assumed material properties and plate thickness, leading to a group velocity cg of the A0 wave of 2865 m/s. Considering the delay of the equipment as well as the delay between the beginning and the peak of the wave, the path lengths can be calculated via:
d=C
g(tp−Δt)
It should be noted that the group velocity could be estimated based on an inverse path evaluation, thus completely removing any necessary baseline information.
For edge detection, the second peak in each wave signal and their corresponding wave path lengths are evaluated. This wave path is translated into four possible locations of reflections using triangulation (see
Since the used receiver is assumed to be axially symmetric, the incident angle of the reflected wave cannot be determined, and all four possible locations are evaluated. When all the measurements are processed, the resulting plot will show a map of possible edge locations. Since it is not possible for edges to be located in the area where the transducers have been placed, the area of transducer locations is eliminated from the analysis.
With regards to the stiffener detection, the distance calculated from the first peak in the captured signal is considered. Any stiffener will increase the thickness of the base plate. This increase in thickness will lead to a change in group velocity if strong bonding is assumed. Thus, based on the dispersion characteristics of the fundamental A0 at low frequencies, a significant change in group velocity is expected. For example, if the thickness is assumed to be doubled, the corresponding group velocity is 3130 m/s (9% difference). Hence the peak should arrive earlier, and since the wave path length is evaluated based on the original group velocity estimate, the estimated distance would be shorter than those from non-stiffened regions. Hence, all estimated wave path lengths d based on the first peak time are sorted in ascending order, and only a subset of the lowest lengths is used to locate the stiffened region. In
Results
The proposed methods are applied to the stiffened aluminum plate, as described herein. In total, 342 measurements are conducted, and the corresponding signals are recorded. First, the edge detection algorithm is applied, and the results are described herein. Then, the location of the stiffener is estimated.
Edge Detection
In
Based on the path lengths calculated from the second peaks, an edge reflection likelihood map is generated, as shown in
For edge detection, the second peak in each wave signal and their corresponding wave path lengths are evaluated. However, the exact origin of the edge reflection is unknown because the data is nondirectional. Hence, this wave path is translated into four possible locations of reflections using triangulation (see
Detection of Stiffened Region
In
In
In this work, 342 pitch-catch Lamb wave measurements on a stiffened aluminum plate have been conducted, and an automatic peak detection algorithm based on the Hilbert transform has been applied.
For edge detection, the distance calculated from the second peak from the captured wave signals is used to determine the possible paths of reflected waves, leading to four possible edge locations for each transmitter-receiver pair. A map is generated of the possible reflection locations. While the area in which transducers are placed can be eliminated from the analysis, the remaining points should have indicated likely edges of the plate. However, the data was inconclusive because of the excessive noise. Had there been a more distinct pattern, a computer vision algorithm would have been implemented to fit a line in the possible reflection points to determine the edges.
As for stiffener detection, the distance calculated from the first peak is used to determine the direct path between the transmitter and receiver. The A0 group velocity for the stiffened area is higher than that for the regular plate. If the stiffener exists in any part of the direct path, the arrival time is earlier than the expected arrival time. When the pairs of the 75 “shortest” measurements are plotted, the map shows a likely area of the stiffener, with a 1.14:1 true to false ratio. However, it does not show the exact location of the stiffener.
Although the experiment and analysis are somewhat able to reverse engineer the structure without establishing any baseline measurements, several assumptions are made for the scope of this work. First, the coordinate system and grid are drawn parallel to the edges of the plate. Further, knowledge of group velocities is assumed for the time-of-flight calculations. In future work, a focus could be to determine the group velocities directly from measurements on the specimen. In order to enhance the localization of the stiffener, it is possible to consider the reflections from the stiffener. Despite these assumptions, this work provides a step closer to detecting damages in an unknown structure and locating the defects on the map generated by guided wave-based NDT methods.
Robot Platform
In this Example, the work relevant to the development of the NDT robot platform is discussed. First, a mobile robot is designed; development and the components are described. Because it needs to move autonomously, the path planning algorithm is developed, programmed, and tested on a robot platform in addition to developing an algorithm to navigate the transmitter. The results of the path planning algorithms are presented herein. An NDT module is developed to be implemented on the robot platform with a proof-of-concept demonstration provided.
Design and Development of Robot
The design parameters for the robot include size, types of sensors for indoor navigation and cliff detection, and remotely-controlled and autonomous drive modes. Additionally, the NDT module is to be mounted onto the chassis.
The envelope dimensions of the robot are 6 in by 6 in by 6 in. The chassis is designed to be in the approximate shape of a cube with various levels or shelves to hold the electronic components. It has a differential drive system, in which two motors drive the left and right wheels, and a single caster wheel is included for stability. The differential drive system is ideal because it allows for the robot to turn in place about the center of its wheelbase. Micro metal gearmotors (Pololu 3080) are selected for their size to fit into the small footprint of the envelope dimensions. They also have encoders (12 counts per revolution, Pololu 3081) to provide feedback in estimating how far the robot has traveled. Pre-preg fiberglass is laid up and painted to make the side panels. The composite was chosen for its lightweight quality and stiffness. Because various sensors need to extend beyond the exterior walls, fiberglass is easily able to be machined using a laser cutter to make the necessary mounting holes.
Since the eventual goal is to implement a robot to perform NDT autonomously on airplane wings, it is assumed maintenance and NDT will occur indoors, so GPS will not be a viable sensor system. Therefore, an indoor navigation system is utilized. The Marvelmind system consists of ultrasonic beacons, which are mounted around the area of interest and of which one is placed on the robot as a mobile beacon, or “hedgehog.” The hedgehog is the transmitter, and the beacons are the receivers. A radio-frequency router is used to sync all beacons and is connected to a software interface, which is also called the dashboard. The dashboard is used to set the origin of the coordinate system as well as assigning the status of one of the beacons as the hedgehog.
In addition to the indoor navigation system, the robot requires a sensor for its heading. An inertial measurement unit (IMU, Pololu MinIMU-9 v5) is selected because it includes a gyroscope, accelerometer, and magnetometer. The magnetometer essentially serves as a compass and is used as feedback for robot motion, specifically for its yaw angle. While the first two sensors are not currently used in the robot platform, they may be applicable for more advanced terrains and structures.
Because the robot will eventually operate on a plate or similar structure for NDT, it needs to be able to detect the edges of the structure to prevent falling. For this purpose, infrared (IR, Sharp GP2Y0A41SK0F) sensors are tested to determine the minimum distance at which they could detect a cliff. Four of these are mounted onto the chassis: front left and right, and rear left and right, so that the robot has sufficient notice to avoid falling off an edge.
To tie the drivetrain and the sensors together, all the components are connected to an Arduino Mega microcontroller for the low-level control and sensor hub. A motor shield is used to control the two motors and stacked on top of the microcontroller board. The IR sensors and hedgehog are also connected to the Arduino through digital pins. A Raspberry Pi 3 is used as the microprocessor for the high-level control of the robot. The robot is able to be remotely controlled through a computer or a smart phone app, such that a user can input the desired target location for the robot to go straight or use the arrow-keys on the app to control the robot to turn and go straight.
Finally, an NDT module is designed. While much of this project focuses on using contact transducers, they are not a practical solution for a robot. Since contact transducers require a gel couplant as well as an actuator to make and ensure constant contact with the specimen, air-coupled transducers are selected instead. An air-coupled transducer is mounted to the chassis. An adapter is designed to hold the transducer using set screws, so the user can set the desired height from the surface of the specimen. The transducer is then mounted to a goniometric stage, or goniometer, to rotate the transducer to a desired angle. Then, another mount is used to attach the stage through the chassis' side panel and onto the frame. This module is used to conduct the NDT measurement either as a transmitter or a receiver. The circuitry necessary for the module includes an amplification and conditioning circuits.
Path Planning Implementation
The overall goal is to input a single waypoint coordinate to the robot. In the NDT application, it is not necessary to include a queue of waypoints since the robot needs to go to the target location and take NDT measurements. Then, if the user wants another set of measurements, he or she can input another waypoint. The robot then calculates how much it needs to turn as well as how far to drive. The most straightforward method is to turn in place until the robot's heading is facing the target. Then, it moves forward until the desired location. With the magnetometer data and current position update from the indoor navigation, the robot uses the feedback to correct its motions along its path to the target. The overall logic for the path planning algorithm is shown in
iRobot Create 2 Platform
For the path planning algorithm, an iRobot Create 2 platform is used to test and implement the autonomous driving mode. It is selected because of its similarities to the robot that is designed, specifically that it uses a differential drive system and already includes IR cliff sensors. A Raspberry Pi 3 is added and used with ROS (Robot Operating System) for the high-level control.
To start, the Create 2 platform is used to implement basic commands to move forward and turn using odometry, which uses the motor encoder data. However, it is not practical to only use the odometry to control a robot because, without any feedback, there is a possibility of wheel slip or change in the terrain that can cause a shift in the robot's desired path. This can lead to the robot not approaching the correct final destination.
Next, the additional sensors are tested with the Create platform. Marvelmind supplies a ROS package, which is allows communication with mobile beacons and hedgehog, and provides location data received from them. Using the Marvelmind dashboard interface, the user is able to “freeze” and “unfreeze” the map to set their desired coordinate system based on the beacons. A specific beacon is selected to be the origin, and the software sets another beacon to be the other point to establish the x-axis. Additionally, the coordinate system can be rotated to match true north, which is the same frame as the compass readings. Since the robot will be driving on the surface, only the x and y positions are of interest.
In the turning-in-place code, the magnetometer on the IMU is used for heading feedback. The magnetometer is essentially a compass and uses the Earth's magnetic field. The motors on the robot are also considered because they affect the local magnetic field, a phenomenon which is called a hard-iron bias. Therefore, the IMU is mounted away from the chassis itself, specifically under the shelf on which the Raspberry Pi sits. Because of these factors affecting the magnetometer, it is necessary to calibrate the magnetometer before use. To do so, the robot is physically held and rotated such that all axes of the magnetometer are activated by the earth's magnetic field. In this manner, the bias from the motors can be removed from the readings of the magnetometer to better measure the earth's magnetic field.
Since the autonomous driving is ultimately tested on a table or similarly raised surface, it is possible for the robot to fall off the edge if a waypoint off of the table, if selected or the robot drives too close to the edge. As previously mentioned, the Create platform has four IR cliff sensors already installed: Left, Front Left, Front Right, and Right. The Create has an automatic cliff detection mode, but when it is being controlled by a different microprocessor, the default settings are overridden. Thus, for this work, when the IR sensors are triggered, the robot is programmed to stop in the autonomous driving mode.
Coordinate Frames and Transformations
As in many robotic systems, multiple coordinate frames exist and must be transformed such that the robot can be programmed to move as expected. In this system, four frames exist. The Marvelmind beacons and dashboard are used to set the Global frame. The hedgehog is used to provide the position of the robot in the Global frame, and it is placed in the center of the robot where the red circle is shown. The iRobot Create platform has its own internal frame, shown in red, in which the x-axis is the forward direction of the robot and the y-axis points to the left of the robot. The compass provides an angle from north; θ is the complementary angle (from the x-axis to the blue arrow). Next, on the robot, there is a blue dashed arrow, which indicates the forward vector and driving direction of the robot. The purple circle shows the location of the transducer, and the purple Transducer frame is offset by a distance L from the center of the robot and the origin of its local frame. Finally, the green dotted arrow indicates the target vector from the robot, d is the distance from the robot center to the target, and a is the angle and direction the robot must turn to achieve the target vector. On the robot, the position vector of the robot is given by global coordinates provided by the hedgehog.
Transducer Navigation for Transmitter and Receiver Modes
In the overall application, it is not the robot that is of interest to navigate. Rather, the objective is to navigate the air-coupled transducer to the location of the measurement either in transmitter or receiver mode. More details about air-coupled transducers will be discussed. In this work, assuming the forward direction of the robot is pointing in the y-axis, the transmitter is mounted along the x-axis at an offset of L=20 cm.
In transmitter mode, the robot travels from its initial starting position (Position 1 in FIG. 10a to the closest point on the dashed circle, which has its center at the target location and has a radius of L. Once the robot is in Position 2, the location of the red diamond is found by rotating the previous target vector by 90° counterclockwise. The robot rotates in place until the forward vector reaches the target location as shown in
To illustrate the receiver mode,
Kalman Filter
Despite including sensors for feedback, it is necessary to properly use the data to estimate the robot's position and heading. First, a Kalman filter (KF) is utilized to fuse the indoor navigation position data and the odometry. The overall steps of implementing a Kalman filter for this application are: to set the initial values, predict the state and error covariances, compute the Kalman gains, calculate the estimated position and heading, and finally compute the error covariances. [24]
To start, it is necessary to generate a mathematical model of the robot's kinematic behavior. [25] Since it is a differential drive robot, it can only travel in the forward (or backward) direction (the Create's local x-direction) and cannot move laterally (the Create's local y-direction). However, the Kalman filter considers the robot's movement in the global frame. Hence, the model reflects global movement. Assuming linear behavior in a discrete system, the system model of the robot can be described with the following linear equations:
where A is the state transition matrix, and T is the loop rate of the robot. Next, the error (P) and measurement (H) covariance matrices are initialized as 4×4 identity matrices.
Then, the process noise (Q) and sensor noise (R) covariance matrices are initialized. The process noise covariance describes the variance of the actual system and can be modified to better describe the system. In this case, it is initialized with a small number along the diagonal:
The sensor noise covariance matrix is determined by calculating the variance of the sensors. The Marvelmind indoor navigation system supposedly has a ±2 cm accuracy of its position data. Assuming uniform distribution of the error, the variance can be evaluated (32) via:
in which a is the lower end of the error and b is the upper end. Using the above equation, the variance of the indoor navigation is determined and initialized into the sensor noise covariance. Since the error of the odometry is unknown, the values for x′ and y′ are initialized as 1 m/s:
Because this is a covariance matrix, the smaller values reflect a smaller covariance and, thus, more “trust” in the particular sensor. In this case, the filter “trusts” the indoor navigation sensors more than the odometry. However, R is used to determine the Kalman gains, which can vary with each loop and place more emphasis on one sensor versus the other.
Finally, the measurements of the position and velocity will be saved to z, which is the measurement vector. The position will be updated by the x and y location data from the indoor navigation system, which is considered to be the Global frame. The odometry from the Create provides velocity data; however, the velocities are in the robot's local frame. The state transition matrix describes the robot's behavior with respect to the global frame, so the velocities must also be described within the global frame. The norm of the odometry velocity is calculated as the speed, which is multiplied by the robot's forward vector to obtain the velocity in the global frame.
The following describes the KF process as instructed by Kim. [24] The hat (′) notation indicates an estimated value, and the superscript “-” indicates a predicted value. The KF begins with setting the initial values:
Next, the prediction stage consists of predicting the state (x) and error (P) covariance matrices:
{circumflex over (x)}
k
−
=A{circumflex over (x)}
k-1
−
P
k
−
=AP
k
−
A
T
+Q
Then, the Kalman gains are computed in a 4×4 matrix:
K
k
=P
k
−
HT(HPk−HT+R)−1
After the gains are calculated, the measurements from the sensors are introduced, and the estimation stage is given by:
{circumflex over (x)}
k
={circumflex over (x)}
k
−
+K
k(zk−H{circumflex over (x)}k−)
The error covariance (P) is calculated again to prepare for the next iteration:
P
k
=P
k
−
−K
k
HP
k
−
Finally, the process repeats through the last 5 equations until the function, in which the KF is embedded, is terminated.
Similarly, a KF is developed for the heading estimate. In this case, the compass readings from the IMU are fused with the angular velocity from the robot's odometry.
The compass provides the heading in degrees from North, and the angular velocity is in radians per second. To reconcile these units, the degrees are converted into radians for all calculations in the KF.
where A and Tare again the state transition matrix and loop rate, respectively. Similarly, the error (P) and measurement (H) covariance matrices are initialized as 2×2 identity matrices. The process covariance matrix (Q) is initialized with a small value along the diagonal and sensor noise matrix (R) is initialized with 2° (or 0.0349 rad) for the heading error and 1 rad/s for the angular velocity. Similarly, the sensor noise matrix is set such that the odometry is trusted less than the compass.
Next, the initial heading is set by the compass reading, which is converted into radians, and the angular velocity from the Create:
The angular KF follows the same process as the positional KF by inserting the state from this equation into the loop starting from this equation above:
{circumflex over (x)}
k
−
=A{circumflex over (x)}
k-1
−
Path Planning
The functions for autonomous drive are developed and tested on the Create platform. The robot is successfully able to go straight for a user-input distance using odometry. The user is also able to input an angle for the robot to turn left or right, and similarly, using odometry, the robot is able to turn the desired angle. In an open-loop program, the two functions are simply put together, such that the user can input a queue of desired distances and angles for the robot to travel.
In the next step, the transducer in transmitting mode is tested. The driving function of navigating the robot chassis serves as a base, and additional functions are programmed to determine the new target point and to turn in place until the transducer is in the correct location.
Robot Navigation
With the integration of the Marvelmind indoor navigation system as well as the Kalman filter (KF), the system now becomes closed-loop, thus providing feedback to the robot.
First, the driving function is tested without the KF and only relies on the hedgehog for the robot's position. Then, the KF is used, for which, the KF provides an estimate of the robot's position rather than solely relying on the hedgehog's position data. The driving algorithms are tested on a table with the beacons set up in the corners. Then, the desired (x,y) coordinates are input.
As seen in the path planning flow chart (see
The robot is tested with and without the Kalman Filter. After ten test cases for each scenario, the results can be seen in the box plot (see
Finally, the IR cliff sensors are programmed and tested. When there is no cliff, the sensor has a value of 0, and when there is a cliff, the value will change to 1. When any of the sensors detect an edge, the entire state will be 1. This logic will be integrated into the robot such that when the robot encounters an edge, it will stop its travel. The Create is tested on a table and is given a waypoint that is beyond the table's surface. The robot is successfully able to stop when it detects the edge.
Transmitter Mode Navigation
Earlier, the algorithms for transmitter and receiver modes are discussed but only the transmitter mode is implemented and discussed here.
To navigate the transmitter, the algorithm consists of three main functions: 1) evaluating and 2) driving to the effective target, and 3) turning in place until the transducer is in the correct location. In this case, the angular KF is tested separately to verify its effectiveness by setting the robot on the circle that had a radius of L from the target location of the transducer. Then, the robot is programmed to turn in place for a random amount of seconds, which serves as the starting orientation. Finally, the angular KF fuses the compass readings as well the angular velocity from odometry to command the robot to turn to its target. Since the transmission mode does not require a specific orientation of the transducer, only the final position error will be considered. The box plot in
After the angular KF has been verified, the transmission mode driving algorithm is tested. The robot is set in random starting position for ten cases as seen in Table 4.
In all of these cases, the KFs are used, and the results show the final position error (see Table 5. There's is a significant difference between the minimum and maximum errors. As previously mentioned, there is a constant bias despite the compass calibration; additionally, the angular KF test is conducted from one location (with random starting orientations). In these ten cases, the robot starts from random locations, so its final orientations cause the final position error to increase if the final orientation is not what is desired. With a more robust sensor, the orientation could be improved, thus improving the final position error.
NDT Module
Since the eventual goal of this robot is to conduct NDT measurements autonomously, a module to mount onto the robot is developed. In addition to the air-coupled transducer, goniometer, and mounts, there are a signal amplification circuit, signal conditioning circuit, a microcontroller, and batteries. Both circuits are included because this allows the flexibility to switch the robot between transmitting and receiving modes and possibly operate in pulse-echo, which is when one transducer transmits a wave burst and immediately switches to receiving mode to record the data. The NDT measurements are still conducted in pitch-catch, so there is another transducer to act in the other mode.
The circuits are based on the research presented by Pertsch et al. [29], and the schematics for the circuits developed for this robot are shown in
Air-Coupled Transducers
The air-coupled transducer experiment is depicted in
As expected, the larger the distances between the pair, the lower the amplitude, and the rotation also causes a significant decrease of amplitude. This initial test shows that the transducers are sensitive to varying angles. By using a goniometer (Thorlabs GN1/M), the transducer can be rotated about a point that is 25.4 mm from the surface of the goniometer (see
where c is the phase velocity, and Θ is the angle measured from the vertical. An illustration of the above equation can be seen in
It can also be seen that the S0 has a higher phase velocity at f=200 kHz, for which the calculated Θ1 is 3.70°. Because of the significant difference in angle between the A0 and S0 modes, it is important to note that it is possible only to excite one of the modes and not the other. This is due to the fact that the experiment is conducted using air-coupled transducers. If contact transducers are used as in the experiment with the stiffened plate, both modes are inevitably excited.
NDT Module Circuitry
While the NDT circuits have been developed and tested, a separate set up is used for the NDT module proof-of-concept. The block diagram of the proposed set up is shown in
For transmission, the STEVAL-IME013V1 board is selected because it is designed for medical ultrasonic imaging applications. While it is able to control up to eight transducers, for the purpose of this project, only one contact transducer is connected and controlled. Arbitrary signals can be uploaded to the board, so a three-cycle wave burst at f=150 kHz is set. The board is driven by 15 V and it is split into low voltage and high voltage blocks, in which ±5 V and ±12 V regulators are connected, respectively. The low voltage block powers the board. When the signal is generated, the high voltage block is also powered. For the benchtop experiment, a power supply is used, but for the application on the robot, a battery pack is used for the sake of mobility.
For the receiving mode, a circuit board based on the signal conditioning circuit by Pertsch et al. [29] is manufactured into a printed circuit board. The filtered signal is passed to a microcontroller (CY8CKIT-046 PSoC), which has a 12-bit SAR ADC (analog-to-digital converter). Furthermore, this board is selected because the ADC is capable of sampling at 1 MHz.
To simulate the NDT experiment on the embedded implementation, the transmission and receiver circuits are connected, such that the signal can be triggered the microcontroller on the receiver. In this manner, the transmission board excites the signal through the amplification circuit and transducer. The wave signal is received by the other transducer, and the signal passes through the conditioning circuit to be recorded.
NDT Module Proof-of-Concept
With the NDT module's circuitry, experiments are conducted on the unstiffened aluminum plate. The transmitter is mounted to the goniometer, which is set at 8.5° (as previously determined), facing toward the receiver. The face of the transmitter is 21 mm from the plate. The receiver is mounted to a bracket and facing straight down with its face 22 mm from the plate. Five scenarios are tested for comparison:
First, the transmitted signals (probes 1 and 2 from
When using the benchtop waveform generator and oscilloscope, the experiments are repeated and the signals are averaged to increase the signal-to-noise ratio (SNR) with a built-in function. For the NDT module, the signal is programmed to be a single burst, so it must be transmitted multiple times to evaluate an average signal. For the probe locations 3 to 5, four signals are captured and averaged in MATLAB (see
Next, signals from probe 3 are shown in
Two signals from probe 4 are shown in
Finally, the signals captured from probe 5 are saved in the internal RAM of the microcontroller after the data is converted via the ADC see
As previously mentioned, to improve the quality of the signal, four signals are captured for each scenario and averaged (see
where Sef is the root mean square value of an adequate part of the filtered signal. In this case, three wave packets starting with the first packet of interest is used. Nef is the root mean square value of the noisy part of the raw signal. The results can be seen in Table 6, in which it the SNR is shown in decibels. It is clear to see the low-pass filter makes an improvement. While this implementation was done in MATLAB, the low-pass filter can also be implemented in the NDT module's microcontroller.
Because the electronics are able to transmit and receive the correct signals, this demonstrates the possibility of utilizing robot platforms for NDT measurements gathered using air-coupled transducers.
Prediction and measurement of nonpropagating lamb modes at the free end of a plate when the fundamental antisymmetric mode a0 is incident. The Journal of the Acoustical Society of America, 113(6):3032-3042, 2003. doi: 10.1121/1.1568758.
Thus, specific embodiments of robotic platforms and robots for nondestructive testing applications, including their production and uses thereof have been disclosed. It should be apparent, however, to those skilled in the art that many more modifications besides those already described are possible without departing from the inventive concepts herein. The inventive subject matter, therefore, is not to be restricted except in the spirit of the disclosure herein. Moreover, in interpreting the specification and claims, all terms should be interpreted in the broadest possible manner consistent with the context. In particular, the terms “comprises” and “comprising” should be interpreted as referring to elements, components, or steps in a non-exclusive manner, indicating that the referenced elements, components, or steps may be present, or utilized, or combined with other elements, components, or steps that are not expressly referenced.
This United States Utility Patent Application claims priority to U.S. Provisional Application Ser. No. 62/742,381 filed on Oct. 7, 2018, which is entitled “Robotic Platforms and Robots for Nondestructive Testing Applications, Including Their Production and Use” and which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
62742381 | Oct 2018 | US |