Elbow Detection in Pipes for Autonomous Navigation of Inspection Robots

Nuclear decommissioning is a global challenge with high costs associated with it due to the hazardous environments created by radioactive materials. Most nuclear decommissioning sites contain significant amounts of pipework, the majority of which is uncharacterised with regards radioactive contamination. If there is any uncertainty as to the contamination status of a pipe, it must be treated as contaminated waste, which can lead to very high disposal costs. To overcome this challenge, an in-pipe autonomous robot for characterisation is being developed. One of the most significant mechatronic challenges with the development of such a robot is the detection of elbows in the unknown pipe networks to allow the robotic system to autonomously navigate around them. This paper presents a novel method of predicting the direction and radius of the corner using whisker-like sensors. Experiments have shown that the proposed system has a mean error of 4.69∘ in the direction estimation.


Introduction
There are a large number of nuclear facilities across the UK, some of which date back to the 1940s [1]. A commonality in all nuclear facilities is that pipes are used to transfer radioactive substances. All pipework, including scaffolding poles in nuclear facilities, either legacy, operational or new-build, will have to be decommissioned. Figure 1 shows a representative set of pipework in a nuclear facility. The decommissioning process is long and expensive due to the hazardous environment created by radioactive material. The current method for characterisation is to send workers into the hazardous zones to disassemble the pipework and manually scan it. This is not only a potential health risk but it is also costly in both time and the secondary waste which is generated. A low-cost robotic solution, able to both radiologically and geometrically characterise the pipework, could identify uncontaminated sections which could then be disposed of as free-release material, leading to significant cost savings and reducing the time spent by the workers in hazardous zones. The system will predominantly be detecting alpha radiation, as beta and gamma could be detected from outside the pipe and would not required an in-pipe robot.

Design Considerations
The pipe inspection robot has been designed based on the following set of requirements: -Operate within a 150 mm diameter pipe containing no fluids. -Operate in both horizontal and vertical pipes.
-Navigate pipe junctions including elbows and Tjunctions autonomously. -Carry a payload of 0.5 kg.
The final system should also be untethered (battery powered with wireless communications). As will be Fig. 1 Photo of pipework from an exemplar facility discussed in Section 2 there are no existing pipe inspection robots which meet these requirements, so a new robot, 'FURO' has been developed. While the aim of the system is to have it untethered, there are large challenges associated with in-pipe communications. Viable solutions to this exist as summarised in [2], however the wireless requirements of the robot will be revisited in further work. This paper presents the development of the sensor package required for the detection of corner parameters for autonomous navigation round pipe elbows.
The paper is organised as follows; Section 2 contains a review of the current state-of-the-art in in-pipe robots and sensing; Section 3 introduces the hardware used. First the pipe inspection prototype FURO, the bespoke feeler sensor and finally the test rig set up; Section 4 presents the method and algorithm which determines the corner parameters; Section 5 shows and discusses the results of the experiment; final Section 6 contains the conclusions of the report and a short discussion on the further work in the project.

Related Works
This Section contains an overview of current pipe inspection vehicles, reviews different methods of cornering and discusses in-pipe sensing robots.

Applications
Pipe inspection systems are widely used in the sewage, water, oil and gas industries. Generally, such pipes require scheduled inspections, as defects in the pipe can lead to large losses [3]. Manually controlled pipe inspection robots were successfully developed and deployed, however the time and cost of deploying these robots meant more new pipework was being laid quicker than it was being inspected so a number of autonomous solutions were developed [4].
The pipe diameters inspection robots have been built for vary, depending on the application; oil pipelines, 200-500 mm [5]; sewage pipes, 200-300 mm [6]; and urban gas pipelines 160-240 mm in diameter [7]. Due to the varying size requirements different methods of locomotion within the pipe have been used.
Pipe inspection robots are commonly split into several categories as presented in [3]; these include multiple locomotion methods.
A widely used method utilises a 'Pipe Inspect Gauge' (PIG) type robot. This is a passive system and navigates using the flow of the fluids within the pipe [5]. Pipework being decommissioned in nuclear facilities does not contain any fluid, so a PIG system would be unsuitable. Therefore an active system is required.
The common active inspection vehicles fall under different mechanical types: -Wheeled, propel themselves using powered wheels [8].
-Tracked / Crawler, use a caterpillar track or similar to contact and drive along the walls [9]. -Spiral / Screw, use a single rotational motor with angled wheels on the stator to drive the robot along the pipe [10]. -Inch-worm, mimics the inch-worm locomotion pattern to move [11].
With a few notable additions and hybrids not mentioned above. Shao et al. [12] provides a comparison of in-pipe robots. It discusses that tracked vehicles offer high mobility similar to wheeled robots but they also have high traction which will be advantages in an unknown environment with unknown surfaces. Wall pressing is also a requirement for climbing within vertical pipes [13]. The addition of wall pressing also allows minor variation in the pipe diameter [12].
To autonomously navigate around bends appropriate control is required which varies depending on the locomotion method of the robot. A summary of recent relevant robots is shown in Table 1.

In-Pipe Cornering
The ability of each method to corner will be discussed in more detail in this section. Classic spiral drive robots are flawed in their fundamental design as their rotor is a rigid body. A large amount of research has been done in this area to overcome this. Methods such as using universal joints and allowing wheel slip [10], varying attack angle [21], and steerable drive units [20] have all been developed. Despite these being shown to be successful their designs are complex, making them difficult to miniaturise. The pipework in question has an entrance size of 150 mm and a minimum diameter of 50 mm meaning miniaturisation is an important factor.
Inch-worm systems can provide very small packaged sized robots, and are able to corner, if designed with a flexible joint [11]. Inch-worm systems are generally much slower and less energy efficient that an equivalent tracked or wheeled robot [12]. Some wheeled and tracked systems use their design to allow them to corner. Both NIRVANA [25] and MRIN-SPECT VII [23] use multi axis gear mechanisms that allow for the wheels to spin at different speeds, providing differential drive without the need of controlling individual motors. This solution contains very complex gear mechanisms that would be very difficult to miniaturise for a 50 mm pipe making it unsuitable for this application.
A hybrid wheeled/snake type vehicle such as the AiRo-II [17] is able to pass around the corner without the need for differential drive. Despite having the advantage of easier cornering it is a less stable platform for a sensitive sensor package as the body is not in a fixed position within the pipe and can be difficult to select a direction at a junction.
A simplistic tracked robot from Nagase and Fukunaga [16] requires only one motor for navigating junctions, vertical sections and variable pipe diameters but it is unable to actively chose direction so is unsuitable.
Walking robots such as Lu et al.'s [14] proposed design, offer high mobility and are able to navigate complex pipe layouts. These systems require complex control and path planning [22]. They also provide slower movement compared to wheeled and tracked robots.
Wheeled and tracked type robots with wall pressing require differential drive to allow them to corner [12]. Determining the control action required to corner can be complex and multiple approaches have been taken [9,[27][28][29]. These all assume that the parameters of the corner are known, for this application the pipework is unknown. To allow the system to be autonomous there is a clear need for sensing the parameters of the junctions of the pipework.

In-Pipe Sensing
In-pipe sensing is used for two different purposes; environmental observations or robot navigation. This section discusses the methods used to detect and characterise the pipework geometry for navigation.
Tamura et al. [18] utilise a 'Charge-Coupled Device' (CCD) camera with ring type laser to detect junctions and defects within the pipe, however they are not used to determine the parameters of the junctions. Kakogawa et al. [15] use a 'Laser Spot Array' (LSA) and camera. They assume the radius of the pipe is known and state the accuracy of the system is inadequate, but they are able to identify junction types.
The IPR-D300 [24], has a more scalable solution which does not involve detecting the corner parameters. Their robot is a tracked, wall pressing robot with three drive units. On each drive unit there is an 'Ultrasonic' (US) sensor placed pointing at the wall. Their control for the corner involves halving the speed of the motor which detects a distance over a certain threshold, i.e. slows down the track on the inside of the corner. This solution would aid in the turning process but has a poor resolution of direction.
Kim et al.'s [26] robot uses a 2D LIDAR to scan the elbows and T-junctions, it is able to determine corner direction with a mean error of 0.64 • ; this test was done on two different corner angles. Despite the result being accurate the sensor its self has a package size of 75 × 60 × 60 mm which is too large for the 50 mm pipe.
The most advanced in-pipe autonomous robots for an unknown pipe are the MRINSPECT series [8], they utilise 'Position Sensitve Devices' (PSDs), lasers and a CCD camera to provide corner directional information. Early versions used a CCD camera to detect the patterns of shadows for identifying landmarks within the pipe [30]. Using the PSDs they are able to detect corner direction and distinguish between a T-junction and mitre [31]. The camera and laser system is also able to determine features ahead in the pipe, including corner direction [32].
Both the PSDs and camera work in fixed radius pipe networks, although a method determining radius has been proposed [8]. This system has a mean error of 2.84 • for predicting the angle of the corner direction. This and Kim et al. [26] will be used as benchmark for the sensor suit being developed.
Despite MRINSPECT's [8] method being computationally light, the requirement of a camera and imaging processing would add an additional unwanted load to the system. They also utilised 6 -8 'Infrared' (IR) sensors for the PSD system this would adding further load in sampling and powering the sensors themselves. Their IR sensors also have a minimum range of 20 mm meaning they would be unsuitable for the 50 mm diameter pipe as for large segments of the junctions, they would be out of range. This method is proven to be successful and suitable for their application, however this paper will review an alternative method for detection which will be better suited for the intended application of 50 mm pipework.

Contribution
There are very few sensor packages that are able to detect the required corner parameters, none of which are suitable for the proposed application. The main required parameters to be detected are the corners major radius and the direction the corner turns. This paper presents a bespoke sensor that can be used to detect both the corner direction and radius to allow autonomous navigation in an unknown pipe network. The main focus being corner direction as we will assume the pipe elbows fit to a standard short elbow [33] and thus the radius is fixed as the diameter of the pipe. Testing with a varying radius and full autonomous cornering will be visited in further work.
The contribution of this paper is the development of a competitive sensor for the detection of the parameters of an elbow for the autonomous navigation system.

Nomenclature
Due to the various required parameters the following defines the main variables used for the rest of the paper.
The axes shown in Fig. 2 are the local and global coordinate frames for the robot and corner. The local coordinate frame, x, y and z are referenced to the centre of the inspection robot itself. In this case the x axis points in the direction the robot is travelling and the z axis points in the direction of the first 'Drive Unit' (DU) on the robot, usually coloured red. The global coordinate frame is defined asX,Ŷ andẐ, referenced to the elbow.Ẑ points in the direction the corner curves in, andX points into the back of the corner. Figure 3 shows a pipe elbow with the variables defined. R is the major radius of the elbow also called the corner radius; r is the elbow minor radius or pipe radius; φ is the corner angle; the difference between the local robot axis, z, and the corner axes,Ẑ is the corner direction, denoted as θ . A corner direction of θ = 0 would mean the z andẐ axes are aligned. As R is assumed to be known, θ is the crucial parameter required to be detected for estimating accurate velocities for the DUs.
Other variables include, δ which is the offset of the DUs in relation to each other (this is fixed on the prototype as ±120 • and is referenced from z); α i is the angle of feelers;

Hardware Overview
This section servers as an introduction to the prototype inspection robot FURO, which is the use case for the detection system; the bespoke sensor developed for detection elbows; and the custom designed test rig for reliable testing of the sensor package.

FURO Prototype
The prototype has been designed to meet the requirements presented in Section 1.1. Once the designs have been tested and verified, the prototype will be miniaturised to meet the full range of pipe sizes 50-150 mm.
The prototype developed is shown in Fig. 4 with the key features labelled. FURO utilises three DUs each capable of producing 4 Nm of torque to drive the system along the pipe with the additional payload requirement of 0.5 kg. It nominally operates with a 150 mm diameter pipe however a lead screw mechanism along the centre of the robot provides the ability to expand to varying sizes of pipework (126 -175 mm). This mechanism is also used for active wall pressing and can be used to find the pipe's minor radius, r. As discussed in Section 2.1, wall pressing allows FURO to be able to overcome vertical sections of pipework. On FURO the feeler mount height, l l = 0.053 mm and has DU offsets of δ = 120 • . FURO is controlled using ROS [34], with the controller being hosted on a PC. For the final deployable system the controller will be on-board however

Feeler Sensor
To enable autonomous navigation and characterisation of pipework bends, a set of mechanical feelers are mounted on the front of the robot. They utilises a rotary 'Potentiometer' (POT) to measure the angle, α, of the feeler as it travels along the pipe ahead of the robot. Figure 5 shows a simplified diagram of the design.
In addition to the feeler, an on board encoder mounted on the passive wheel of the DU is used to give the distance travelled within the pipe. The contact point of the feeler is a passive roller ball to remove any effect of the lateral forces damaging the feelers. A spring is used to pull the feeler onto the wall such that it has a constant contact and tracks the contours of the walls.
Three feelers are mounted ahead of the DUs of the robot, displaced at 120 • (Fig. 4) to detect all possibilities of junctions. Due to the low tolerances of components, there is error between the output of the three feelers for the same angle of the POTs. To overcome this issue, the feelers have been individually characterised and a look up table of voltage output from the potential divider and input angle is used for each feeler to give a more accurate angle output.
The length of the feelers (l f ) was calculated by modelling the detection angle range for differing lengths as shown in Fig. 6.
The largest change in α for a short elbow, shown in Fig. 6, was estimated to be 66.14 mm. The manufactured length is rounded to the nearest mm giving a feeler length of l f = 66 mm. The effects of manufacturing tolerances have been review later in the paper.

Experimental Set up
The experiment presented in this paper is designed to give feeler data for an accurate prediction of the corner parameters. The test pipe consists of a 150 mm diameter section of straight pipe with a coupler to an elbow with R = 150 mm.  The test rig is designed to fit within the test pipe and is locked in place with a retaining pin. This holds the rig with the feelers in line with the entrance to the pipe. A linear translation motor drives a plate with the feelers attached to it into the corner pipe in 0.01 mm increments controlling the variable x. The step distance of the test rig is smaller than the actual application, however this is used to characterise the feelers and the method will still be applicable to the deployable robot. The translating plate is mounted inside a large bearing which is able to rotate the whole assembly within the pipe. The rotation controls the direction of the corner in relation to the robot, θ . A motor drives this rotation with an accuracy of 0.54 • . A simplified diagram of the experiment is shown in Fig. 7.

Experimental Procedure
The rotation motor holds the rotating section at the specified angle (θ ). For each position θ the feeler sensors are stepped into the corner using the linear translation stepper motor. On each step, the feeler angles (α i ) are sampled and logged. This process is called a pass and is repeated a minimum of fives times.
Once it is complete, θ is then incremented and the passes are repeated. θ was varied in increments of 10 • between ±180 • to give full 360 • coverage of the feelers within the pipe. The raw data was then run through the corner prediction algorithm in Section 4. The prediction was compared with the actual corner direction and radius to evaluate the performance. The velocities could then be calculated for the three DUs, which is the final output of the system to allow for autonomous navigation around a corner.

Corner Parameter Prediction
This section presents the proposed method for predicting the corner direction, θ , which is the primary contribution of this paper. It also presents an extension to the method to determine the corner radius, R, for the case that the robot is not travelling in a standard short elbow.
It can be seen in Fig. 5 that the feelers are mounted in front of the DUs. Due to this the feelers enter the corner ahead of the drive units. During that time, the mounting point of the feeler (on the DU) is in the straight pipe and the feeler arms are passing through the corner. The velocities for the DUs need to be calculated before they enter the corner. This gives a region in the elbow in which the prediction needs to be made. This region is called the corner entrance. The entrance is shown in grey in Fig. 8. For the current feeler length the entrance distance is 62 mm.
As the feelers pass into the corner, through the entrance, all three are sampled. The combination of the three samples is S. These samples are taken multiple times (S 1 , S 2 , ..., S n ) as the feelers progress into the corner, see Fig. 8. The number of samples taken vary dependent on the sample rate, the greater the number of samples the greater the confidence in the result. The algorithm requires a minimum of two samples to be taken in the corner. The final sample S n is the sample at the end of the entrance (62 mm into the corner), and the first S 1 is the start of the entrance. The algorithm is triggered by a change in the feelers middle point greater than a predetermined threshold. This threshold is determined Fig. 8 Pipe entrance (grey) for FURO in short elbow with samples S labelled by the noise characteristics of the feeler sensors, for the presented set up the trigger value is 1 mm. Previous to this all the data will be stored such that the S 1 can be found. S n is determined by finding the distance travelled since S 1 using the on-board encoder on the FURO prototype.

Corner Direction
The direction, θ , trying to be estimated is the angle between the robot and the corner's z-axes. This direction is crucial to determine the individual velocities for the motors.
The process of predicting the direction has been split into three stages, Stage I: Sampling and Kinematics, Stage II: Sample Combination, Stage III: Calibration and Final Prediction. Note all common variables are defined in Section 2.5. The full process is summarised in flow chart, Fig. 20 in the Appendix.

Stage I: Sampling and Kinematics
In the first stage data is collected from all of the feelers. The data is taken over multiple samples (S 1 , S 2 , ..., S n ) as the feelers travel through the corner entrance, Fig. 8. Note the sample distance in Fig. 8 is not in scale to the actual experiment. The method of dealing with a single sample will be explained in more detail in the following. The method is the same for all the samples taken in the corner.
The three feeler sensors are sampled and the raw voltages from each sensor is converted to an angle, α R , α G and α B , these are the feeler angles at a single sample point. These three angles can be entered into the kinematic model to give the end coordinates of the three feelers, P R , P G and P B , these are the contact points of each feeler with the elbow wall. Each end point has it's own set of coordinates in the robots local coordinate frame, P R = (x R , y R , z R ), P G = (x G , y G , z G ) and P B = (x B , y B , z B ).
A simplified diagram of the kinematic model is shown in Fig. 9. l l is defined by the mounting height of the feelers and the radius of the pipe, for the FURO prototype in a pipe with r = 0.075 m, l l = 0.053 m.
Using the diagram the kinematic model can be determined as follows where i = R, G or B depending on if the feeler angle as been entered from the Red, Green or Blue feeler.
Once the end point of the three feelers have been found they can be added to give their middle point, P f m . The central point can be found by finding the mean of the end points as shown in the following equations ( 2 c ) Figure 10 shows the local (y, z) plane of the robot with the feeler end locations, feeler centre point and robot centre labelled.
The next step is to find the change between the feeler central point, P f m , and the robot centre, P c . This will give This process is repeated for each new sample of the feelers to give a change in y and z for each sample. As the feelers travel further into the corner entrance, it is expected that dy and dz will increase as P f m moves further away from P c and more towards the direction of the corner. This is because the deeper they go the more the pipe itself changes thus giving a greater angle change to the feelers. Figure 8 shows the change in the pipe as the samples progress into the corner entrance. It should also be noted that as each sample sees a single slice of the corner, the shape tends from a circle in the first sample, S 1 to an ellipsoid like shape in S n (shown in Fig. 13).

Stage II: Sample Combination
The second stage of the corner direction prediction is the combination of the previous samples (shown in Fig. 11) to give a single angle output.
Their change, d y and d z is summed giving a total displacement in y and z over all the samples for the direction. For the real system, combining them in this method would allow for the rejection of small errors in the changes, as the overall change would be in the corner direction. The sum of the changes are denoted by D y and D z and given by Once the total changes in y and z has been found, they can be used to find the angle, θ f m . Figure 12 shows the summed samples and identifies θ f m . As a result, the angle θ f m is given by where arctan2 is the four-quadrant inverse tangent.
Simulations were run to test the method and it was found that there was a clear correlation between the estimated, θ f m , and the actual, θ , direction. This correlation is independent to each estimate and can thus be corrected for in the final stage.

Stage III: Calibration and Final Prediction
The final stage is the calibration of the angle, θ f m to produce an accurate estimation of the angle, θ . Figure 13 shows the final sample S n for a simulated corner. The feeler layouts, feeler central point and robot centre are shown. The need for calibration of the angle, θ f m , can also be seen with the difference between θ f m and θ .  As discussed previously, the value of θ f m and the corner direction, θ , are independent i.e. any one value of θ f m corresponds to a single value of θ . Due to this it can be calibrated for.
To calibrate for the difference between the measurements, curve fitting was used to best approximate the function. This was done using a sine function and it was reviewed for the case with R = 150 mm, Fig. 14. The following approximation of θ was found θ = θ f m + 13 sin(3.0184θ f m ). ( 6 ) It can be seen from Eq. 6 that the variable effecting the phase of the sin function is very close to three. This is related to the the three drive units in the pipe. The response from the feelers will repeat every 120 • and the factor will be treated as 3 from this point. The discrepancy is due to the assumption made with this method; the feelers stay in the same x-plane when travelling through the corner. This method offers a light-weight prediction with a maximum systematic error ( Smax ) of less than 2 • .

Corner Radius
A method of extending the corner direction to also determine the major radius, R, is also proposed. The process of predicting R utilises the 'Intersecting Chords Theorem' (ICT). This theory, with some manipulation, allows the radius of a circle to be determined from a chord across it. Following [35], the radius R of a circle with a chord of width W and height H is defined by As the feelers take multiple samples through the corner entrance, Fig. 8, the change in the x-axis is also recorded, d x . To apply this to the ICT, d x is used as half the cord width W . To give a heigh from the cord, the final sample taken in the corner entrance can be used, S n = (d y Sn , d z Sn ) to give a magnitude, d yz , to that point from the robot centre, P C , i.e.
As the change has already been calculated for the corner direction this requires no more sensing of the feelers. For Fig. 15 Using intersecting chords theorem to determine corner radius this application, d yz is used as H . Substituting the values and rearranging (9) gives the following equation to calculate the radius, R: (10) Figure 15 shows the method of applying the feeler data to the ICT. The radius prediction was simulated to prove the method's feasibility and was found to provide a satisfactory result.

Drive Unit Velocities
Once all the information has been measured and calculated, the drive unit velocities can be determined. To start, the radii of the feeler paths, R R , R G and R B are calculated. The first step is finding the path length required for each of the drive units. It is initially assumed that the bends are all 90 • elbows, φ = 90 • . Figure 16 shows the geometric layout of the three DU's path lengths, l path R , l path G and l path B .
Using Fig. 16 the equations for the path radii, R R , R G and R B can be found as follows where i = R, G or B. Once the radii of the path is know, the path length, l path i , can be calculated, Fig. 16 Calculating radii From the path lengths the individual velocities can be determined, using the average required velocity, V a as a benchmark. V a = 10 mms −1 and the centre has radius R = 150 mm, giving a path length, l path c = 0.236 m. This means the required turning time to is t = l path c /V a = 23.56 s. This can be used to determine the other velocities for their varying path lengths. Knowing the path lengths vary due to their radii, the prior steps of determining path length and time can be negated as they are constant across all three DUs. This allows the radii to be used to give a ratio with the centre radius which can be treated as a multiplier for velocity to give the DU speeds. This also removes the requirement to know φ if exit conditions are known. The velocities for the drive units, V i can be found using These velocities can then be set for the DUs to allow the robot to autonomously navigate around the corner.

Results and Discussion
This section reviews the results taken from the feeler rig then follows with a discussion. The experimental method used to gain the data is explained in Section 3.3.

Results
First a single pass of data is reviewed, then the full set of results are presented.

Single Pass
The selected set of data for detailed investigation is taken from the θ = −70 • set, as the results for this angle are the closest to the mean error and can be viewed as representative of the full data set. Figure 17 shows the simulated progression of the end points of the three feelers at θ = −70 • . Let P i S 1 be the end point of the Red, Green or Blue Feeler at the start of the Corner Entrance and P i Sn be the end point of the Red, Green or Blue Feeler at the end of the Corner Entrance.
It can be seen that the for the Blue Feeler, the end point (P B ) moves closer to the center of the robot (P c ) increasing the feeler angle by a large magnitude. For the Red Feeler (P R ), the movement is away from P c decreasing the feeler angle but with a small magnitude. The Green Feeler end point (P G ) also moves away from P C decreasing the feeler angle, but with a larger magnitude than the Red Feeler. It should be noted that as the selected θ = −70 • contains 10 passes into the corner. Figure 18 shows the raw data from one of the passes (pass 5). It can be seen that it is very noisy, however there is a Fig. 17 Leg layout of feelers at start (S 1 ) and end of corner (S n ) entrance for θ = −70 • trend in direction for each feeler angle as the distance into the corner increases. The Blue Feeler has a large positive change in angle (α B ), the Red Feeler has a slight decrease in the angle (α R ) and the Green feeler has a decrease in angle (α G ), which is larger than the Red Feeler. The general trends from this data match the expected changes shown in Fig. 17.
Passing the full set data at θ = −70 • through the presented algorithm from Section 4.1, the final prediction of corner direction and radius can be found, as shown in Table 2. The bold row is the prediction from the feeler angles presented in Fig. 18.
The average estimation across the multiple passes is −65.06 • with a range of 4.91 • ; this gives an mean prediction error of 4.94 • . The radius target is 0.1524 m, the average prediction is 0.1522 m. The predicted corner direction for  Table 3.
Expressing the difference between the actual and predicted path lengths gives, dl path R = 0.0064 m, dl path G = −0.0064 m and dl path B = 0.0006 m. This shows the maximum distance a single DU needs to compensate for is 6.4 mm.

Full Data Set
For each value of θ in increments of 10 • between −180 • to 180 • , there are a set of multiple passes of feeler data. To display this data, the mean prediction for each θ has been plotted in Fig. 19 with error bars for the minimum and maximum prediction for each set.
It can be seen that the predicted values follow the target data; the mean absolute error in the direction prediction  is¯ θ = 4.69 • . This metric is used to allow it to be compared with MRINSPECT VI [8] which is being used as the benchmark for this system. To see the impact the error has on the output of the system, the DU velocities will be calculated.
The radius prediction was found to have a mean absolute error of¯ R = 0.91 mm over all the samples.
The mean error in direction is propagated through to the DU velocities. Using the method presented in Section 4.3 θ , the path lengths of the DU can be calculated and the error between the actual and predicted values can be found. For θ = 4.69 • with corner parameters R = 0.15 m, φ = 90 • , gives the mean error in path length of¯ l path = 3.9 mm. Calculating velocity with an average of V a = 10 mms −1 , the mean absolute velocity error is¯ V = 0.2605 mms −1 .

Discussion
The changes in the raw feeler data from Fig. 18, follows the expected change for the feeler angles. This shows the basic principle of the method is valid and the change in direction can be detected. The full set of data shown in Fig. 19 shows that the trend of the predictions follows the target angles but there are errors present in the predictions. The largest distance a single DU has to overcome from the mean error is l path = 3.9 mm. This value is minimal and can be rejected due to the robustness of the prototype with a slight slippage of the tracks on the pipe. Comparing this to the simulated results the expected error is Smax = 1.78 • which is lower than the measured data.
The results show the method is viable for estimating corner direction but could be improved. The error in the measurements is due to the low cost POTs used for measuring the angle. These provide noisy data and require lengthy individual characterisation as the tolerances in the components cause their resistance to vary across the three feelers. Even with the characterisation there is still a large amount of noise in the data from the sensors.
As the three feelers are at a fixed offset to each other of 120 • , if the sensors were ideal and have clean responses, the output of feelers and thus error in the prediction would repeat every 120 • . It can be seen in Fig. 19 that the areas where there are large errors, such as θ = 80 • , the error is not repeated at ±120 • from it, −40 • . This shows the errors are not due to prediction method but due to poor readings from the sensors themselves. Improvements could be made by replacing the low-cost sensors with higher end encoders. This would allow the position of the encoder to be entered straight into the kinematic model meaning the detection method itself is still valid but improving the detection mechanism.
Despite the detection method being developed with the FURO prototype as the use case, it is applicable for any wall pressing in-pipe inspection vehicle the requires parameters for the corner to be determined.

Effect of Manufacturing Tolerances on Prediction
The effects of manufacturing tolerances on the length of the feeler was reviewed to see the effect this would have on the final output of the system. The target length for manufacturing was taken as 66.14 mm with the feeler's ideal length of 66.14 mm. Reviewing the worse case errors in Fig. 19 Mean predicted angles vs target angle manufacturing the maximum and minimum possible feeler lengths were found to be l f max = 66.52 mm and l f min = 65.68 mm. Propagating these values through the system and reviewing the worst case application of two feelers at length l f max and one feeler at length l f min led to an absolute mean error in the output of 4.19 • . This includes the maximum simulated error in the method of Smax = 1.775 • . Due to this variation and the probability of all this case occurring being small, the effect of the manufacturing tolerances in predicting corner direction will be negligible.

Comparison Other Detection Systems
The MRINSPECT VI robot [8] and Kim et al.'s system [26] are being used as the benchmark for this prediction, they have a mean error (¯ θ ) of 2.84 • and 0.64 • respectively in their prediction. Comparing this to the results presented in Section 5, the mean error of the real system is¯ θ = 4.69 • which shows that both the sensor suits have a more accurate corner detection. However the aim of this task was to make a comparable prediction method which is scalable for use within a 50 mm pipe, and which is computationally cheap and has a low system load. In comparison to the CCD camera and bank of IR sensor required by MRINSPECT and the 2D lidar required by Kim et al., this aim has been achieved.

Scalability
The detection method is simulated and tested at the 150 mm size. This section applies the same simulations to the 50 mm pipe to show the method is scalable. The 50 mm pipe has an optimal feeler length of 23.06 mm for maximum change in it's angle (α) in a short elbow with scaled dimensions for the prototype. Applying the algorithms presented in Section 4, the mean error in direction and velocity were found. The miniaturised system has a¯ θ = 1.81 • and V = 1.10%. This shows the method is applicable to both the 150 mm and 50 mm diameter pipes and the detection method is scalable.

Conclusions
This paper presents a novel method of predicting the parameters of an in-pipe elbow within an unknown pipe network. It achieves this using three bespoke feeler sensors and algorithm to detect corner direction with a mean error 4.69 • . Further work on this method includes the addition of closed loop control once the robot is in the corner to correct for any error in the set velocities thus allowing better rejection of any error in the prediction. One final extension is the testing of the radius prediction on different radius bends.