A sensor data fusion-based locating method for large-scale metrology ACTA IMEKO ISSN: 2221-870X December 2020, Volume 9, Number 4, 136 - 143 ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 136 A sensor data fusion-based locating method for large-scale metrology Andrea Rega1, Ferdinando Vitolo2, Stanislao Patalano2, Salvatore Gerbino3 1 Department of Neurosciences, Reproductive and Odontostomatological Sciences, University of Naples ‘Federico II’, Naples Italy 2 Department of Industrial Engineering, University of Naples ‘Federico II’, Naples, Italy 3 Department of Engineering, University of Campania ‘Luigi Vanvitelli’, Aversa, Italy Section: RESEARCH PAPER Keywords: Large-scale metrology; sensor data fusion; position measurement; handling device; product design Citation: Andrea Rega, Ferdinando Vitolo, Stanislao Patalano, Salvatore Gerbino, A sensor data fusion-based locating method for large-scale metrology, Acta IMEKO, vol. 9, no. 4, article 18, December 2020, identifier: IMEKO-ACTA-09 (2020)-04-18 Section Editor: Francesco Bonavolonta, University of Naples Federico II, Italy Received October 31, 2019; In final form May 15, 2020; Published December 2020 Copyright: This is an open-access article distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. Funding: This work was developed with the economic support of MIUR (Italian Ministry of Universities and Research) Corresponding author: Andrea Rega, e-mail: andrea.rega@unina.it 1. INTRODUCTION The measurement of geometric deviations in the manufacturing of large-sized objects is a critical issue. Variations are difficult to measure, and they have a significant impact on the quality of the assembly and the reliability of the final product. One of the most efficient ways to identify dimensional and geometric variations in this scenario is to compare the nominal product with a digitalisation of the real product. In order to achieve this objective, a reverse engineering (RE) process has to be used. Reverse engineering of geometric models [1] is widely used not only in the industrial field [2] but also in the fields of architecture [3], archaeology and cultural heritage [4], topography [5], food [6] and medicine [7]-[9]. This process aims to obtain a digital mock-up (DMU) [10] of the real products and components, playing a key role in their inspection [11]. The DMU of real objects is very useful for quality control, the detection of defects [12] and performance evaluation [12]-[16], and it is supported by virtual reality (VR) for virtual maintenance applications [17],[18]. In the context of large-sized objects, the digitalisation process requires multiple acquisitions from different locations followed by the realignment of the point clouds. The larger the object size, the higher the number of acquisitions required, and each acquisition is affected by a locating error. It follows that the realignment phase has a huge impact in this context. Therefore, the point-cloud realignment step is crucial to control form errors [19]. There are three main steps in the point-cloud realignment process: (i) the operator realigns the point clouds by using common features among the acquisitions. This technique works well if the objects are rich in features, but the operator’s post- processing phase is long; (ii) coded or non-coded markers/targets are placed on the product and in its surrounding space, and they are precisely recognised and used to find a ABSTRACT The measurement of geometric and dimensional variations in the context of large-sized products is a complex operation. One of the most efficient ways to identify deviations is by comparing the nominal object with a digitalisation of the real object through a reverse engineering process. The accurate digitalisation of large geometric models usually requires multiple acquisitions from different acquiring locations; the acquired point clouds must then be correctly aligned in the 3D digital environment. The identification of the exact scanning location is crucial to correctly realign point clouds and generate an accurate 3D CAD model. To achieve this, an acquisition method based on the use of a handling device is proposed that enhances reverse engineering scanning systems and is able to self-locate. The present paper tackles the device’s locating problem by using sensor data fusion based on a Kalman filter. The method was first simulated in a MatLAB environment; a prototype was then designed and developed using low-cost hardware. Tests on the sensor data fusion have shown a locating accuracy better than that of each individual sensor. Despite the low-cost hardware, the results are encouraging and open to future improvements. mailto:andrea.rega@unina.it ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 137 correspondence between the acquisitions. This method also requires user actions; (iii) the reference system of the acquisition device is tracked, enabling the automatic realignment of the point clouds without user actions. Currently, the point-cloud realignment process is mostly manual, which takes a long time and requires skilled users. The market offers several acquisition devices with different operational characteristics in terms of speed and accuracy. The most common categories are based on point-by-point and full- field technologies [20]-[22]. Point-by-point technology entails high accuracy acquisitions but also high acquisition time. Conversely, full-field systems acquire large and complex geometries quickly but with lower accuracy. The Leica T-Scan 5 is an example of a commercial hand-held scanner device. It is used for high-precision measurements in the industrial field. The scanner stands out for its ability to acquire a large number of points within an area, guaranteeing a good resolution [23]. The Leica T-Scan 5 needs an external absolute tracker to measure the device’s coordinates. MaxSHOT 3D by Creaform is a portable coordinate optical measuring system especially used for the acquisition of large parts. It is based on photogrammetry technology and it guarantees an accuracy of 0.025 mm/m for parts between 2 and 10 m long [24]. Moreover, the device provides a real-time position display, helping the users and improving the efficiency of the process. However, the requirement for markers to be placed on the target model and the acquisition volume, together with the requirement for user action, are still limiting factors. Therefore, these and similar commercial solutions restrict their application to environments where a human presence is allowed. The tracking of the acquisition device’s reference system could be a good strategy for overcoming the hand-held limitations and to acquire large and featureless geometries with a high level of accuracy. In the aeronautical field, for example, fuselage inspection could be significantly improved by increasingly using the comparison between the nominal DMU and the digitalised models. Nevertheless, acquisition is a critical process because the object is large in size, it does not have enough different features and it is important to ensure there is no interaction with its surfaces. Digitalisation could be performed by treating the fuselage as though it were a tube and acquiring it section by section by means of a scanning device able to move autonomously inside it along a path collinear with its axis. According to the exact location of the device reference system, the acquired section can then be aligned in the 3D digital environment. Establishing the exact location of the device reference system in relation to the global reference system, for each acquisition, is still a challenge. A. Paoli and A.V. Razionale [25] tackle the measurement of large hulls by means of a six-axis robotic arm equipped with an optical scanner as an end effector. The robot can be translated onto a horizontal rail 12 m long and a vertical rail 3 m long. The robotic system, combined with an industrial laser station (Leica TDA 5006), ensures the alignment of the point clouds by tracking the position of the tool centre point (TCP) in the global reference frame. The need for a careful setting for the position of the laser station and the large size of the hulls are the major limitations of this system. Moreover, it requires object movement to perform the full acquisition. Barone et al. [26] propose a methodology to automatically align point clouds in a 3D environment. They have developed a system that integrates a full-field optical scanner and a stereo vision system. The stereo vision system tracks the optical scanner by means of retro-reflective infrared markers rigidly fixed to the scanner. However, the system operates within a limited working volume due to the tracking system. The performance of this system is linked to the visibility of the markers and to the camera view. Hui Du et al. [27] have developed a large-scale 3D scanning system that combines a six-axis robotic arm, a laser tracker and a binocular-structured light scanner. The robot, with the scanner as the end effector, moves through the planned discrete positions allowing the scanner to acquire the 3D point clouds of the corresponding regions. This system is more advanced than the one described in [25], but it still requires a laser station to track the scanner coordinates in the global reference system. Jinlong Shi et al. [28] propose a method to measure large-sized objects based on the integration of a 3D scanner with a laser rangefinder. The scanner is assembled on a robotic arm that is able to slide along a guide rail (Figure 1). The partial sections of the target object are acquired consecutively by the scanner, which, together with the robotic arm, moves forward on the guide rail. The laser rangefinder, rigidly fixed on the scanner, locates its position in the global frame. The solutions described above have clear drawbacks: (i) the tracking space is limited and usually requires additional components (e.g. a laser station), (ii) all systems are characterised by their large size and (iii) they have been developed mainly to perform external shape acquisition. Accordingly, the present paper proposes an acquisition method based on an autonomous, small-sized device able to self- locate. The aim of the device is to carry a scanning system for model digitalisation in order to enable an easier change of position and an inner surface acquisition. The device was first designed, and then its performance was simulated [29]. Following this, a low-cost prototype was developed [30]. It addresses the locating problem by using sensor data fusion (SDF) [31] based on a Kalman filter [32],[33]. The Kalman filter is a very common method for addressing navigation problems [34]. In the context of autonomous systems, the filter is commonly used to combine sensor data in order to obtain a more accurate measurement compared to the original one from a single sensor [35]. The key idea is to develop a redundant measurement system to minimise the location error of the handling device, thus improving the accuracy of the digital form. Furthermore, the handling device removes the need for a skilled operator, facilitates inner surface acquisition and makes the acquisition field potentially unlimited. Figure 1. (a) Hardware architecture proposed by Jinlong Shi et al. [28]; (b) experimental system. ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 138 In the rest of the paper, Section 2 introduces the problem formulation and Section 3 presents the locating method. Section 4 then presents the results of the hardware-in-the-loop simulation of the proposed method, while Section 5 presents the hardware of the developed prototype. The validation is described and discussed in Section 6. Finally, conclusions are given in Section 7. 2. PROBLEM FORMULATION In the context described above, the RE system is composed of two subsystems: the 3D acquisition system and the handling device. The first moves together with the handling device during the acquisition process. Thus, the acquisition system acquires the point clouds in its reference frame, and the handling device defines the relative position between the acquiring reference frame and the global reference. Consequently, the final realignment quality is directly related to the self-locating accuracy of the proposed handling device. Given an acquired point 𝑷, its location is related to the scanning reference 𝐎𝟏 by means of the p 1 vector. The location of the point 𝑷 is related to the global reference 𝐎0 by means of the p0 vector. The scanning reference 𝐎𝟏 is related to the global reference 𝐎0 by means of the 𝐨𝟏 𝟎 vector (Figure 2). If 𝐑𝟏 𝟎 is the rotation matrix of the scanning reference related to the global reference, the position of point 𝑷 in relation to the global reference can be expressed as 𝑝0 = 𝑜1 0 + 𝑅1 0𝑝1. (1) Considering movements in a Cartesian plane in the direction of the y-axis, equation (1) can be written as follows: { 𝑝𝑥0 0 𝑝𝑦0 0 𝑝𝑧0 0 1 } = [ 0 −1 0 0 1 0 0 𝑜𝑦0 0 0 0 1 0 0 0 0 1 ] { 𝑞𝑥1 1 𝑝𝑦1 1 𝑝𝑧1 1 1 } , (2) where the homogeneous (4 x 4) transformation matrix refers to the scanning reference 𝐎𝟏 with respect to the global reference 𝐎0. The proposed method aims to accurately estimate 𝒐𝒚𝟎 𝟎 , which corresponds to the device’s displacement along the y-axis. 3. LOCATING METHOD The proposed method adopts the SDF, based on the Kalman filter, to reduce the positioning error of the handling device using multiple and redundant measurements [24]. The proposed acquisition process is depicted in Figure 3. It is composed of four steps: (S1) sub-task definition, which splits the main task by using evenly spaced movement steps, according to the scanner operation parameters. The computed step movement is assumed as a sub-task target; (S2) the actuator system is turned on until the sub-task’s target is reached; (S3) estimation of the current system location using sensor data fusion, which evaluates the locating error; (S4) corrective action to move towards the target. The locating method based on the SDF is the core of the proposed process: in step 3, two different kinds of sensor carry out a location measurement. The sensors return different values of the same quantity due to their difference in accuracy and different technology. The signals generated are fused to reduce the error of each individual measurement. In this specific case, the device is equipped with incremental encoders and an ultrasonic sensor. Therefore, it is able to predict location using the odometry model and the encoders’ data, and then it updates the measurement by fusing the ultrasonic sensor’s data. 3.1. Odometry model The RE system position is represented in the global reference 𝐎0 by its central point 𝐎𝟏 with the Cartesian coordinates (𝑥1,𝑡,𝑦1,𝑡) at time t. The local coordinates system 𝐎𝟏 is fixed to the device. Therefore, the device’s location at step 𝑡 + 1 is described by the following odometrical model: 𝑥0,𝑡+1 = 𝑥0,𝑡 + 𝛿𝜌0,𝑡 ∙ cos𝜃0,𝑡 𝑦0,𝑡+1 = 𝑦0,𝑡 + 𝛿𝜌0,𝑡 ∙ sin𝜃0,𝑡 𝜃0,𝑡+1 = 𝜃0,𝑡 + 𝛿𝜃0,𝑡, (3) where 𝛿𝜌0,𝑡 is the movement length and 𝛿𝜃0,𝑡 the elementary rotation from state 𝑡 to 𝑡 + 1. Assuming there is no wheel slippage, then Figure 2. Reference system. Figure 3. Proposed acquisition process. ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 139 ∆𝛿𝜌0,𝑡 = ∆𝑈𝐿𝑡 + ∆𝑈𝑅𝑡 2 ∆𝜃0,𝑡 = ∆𝑈𝐿𝑡 + ∆𝑈𝑅𝑡 𝑏 . (4) ∆𝑈𝐿𝑡 and ∆𝑈𝑅𝑡 are calculated using the right and left encoders, respectively. With reference to equation (2), and assuming a Gaussian distribution of the measurement noise, the odometry model can be written in the following compact form: O1,𝑡+1 = 𝑓(O1,𝑡,𝛿𝜌0,𝑡) + 𝑛𝜌,𝑡, (5) where O1 = [0,𝑦1,𝑡] and 𝑛𝜌,𝑡 denote the system noise that models the uncertainties of the odometry model. 3.2. Measurement model The measurement of the ultrasonic sensor is 𝑑𝑟, which is the distance between the marker with a known position (𝑥0,𝑚,𝑦0,𝑚) and the ultrasonic sensor’s central point. The measurement model is given by 𝑧𝑡 = [ 𝑥0,𝑚 − 𝑑cos𝜃0 𝑦0,𝑚 − 𝑑sin𝜃0 ], (6) where 𝑑 = 𝑑𝑟 + 𝐿 is the distance between the marker position and the central point of 𝐎𝟏 fixed to the RE system. Equation (6) defines the measurement model, which can be written in the following compact form (including noise): 𝑧𝑡 = ℎ(O1,𝑡) + 𝜈𝑡, (7) where 𝜈𝑡 is considered to be the zero-mean white noise. 3.3. Position estimate At time 𝑡𝑖, the location measurements 𝑧1𝑖 and 𝑧2,𝑖 come from the encoder and ultrasonic sensor, respectively. The estimated location depends on the previous estimate at time 𝑡𝑖−1 and the new measurements, which are affected by an uncertainty expressed as the standard deviation 𝜎𝑧1 and 𝜎𝑧2. The predicted location 𝑦(𝑡𝑖) is expressed as follows: 𝑦0(𝑡𝑖) = �̂�0(𝑡𝑖−1) + 𝑧1,𝑖 𝜎𝑦0 2 (𝑡𝑖) = 𝜎𝑦0 2 (𝑡𝑖−1) + 𝜎𝑧1 2 . (8) In the updating stage, the ultrasonic sensor conducts the measurements, and, therefore, the estimated location �̂�(𝑡𝑖) is expressed as follows: �̂�0(𝑡𝑖) = 𝑦(𝑡𝑖) + 𝐾(𝑡𝑖)[𝑧2,𝑖 − 𝑦(𝑡𝑖)], (9) with 𝐾(𝑡𝑖) = 𝜎𝑦0 2 (𝑡𝑖) 𝜎𝑦0 2 (𝑡𝑖) + 𝜎𝑧2 2 ; 𝜎𝑦0 2 (𝑡𝑖) = 𝜎𝑦0 2 (𝑡𝑖−1) + 𝜎𝑧1 2 , (10) where 𝐾(𝑡𝑖) is the Kalman gain. In the RE context, the Kalman filter improves the alignment of the point clouds by minimising the mean square error of the estimated locations. 4. SIMULATED RESULTS A hardware-in-the-loop (HIL) simulation has been used to test the proposed method. An Arduino board was programmed in a MatLAB/Simulink® environment, and random signals with Gaussian distribution and a zero mean were used to simulate the sensors. The simulation-ending condition was set at 1000 mm, whereas the forward step was set at 100 mm. The mean of the generating values for 20 iterations is shown in Table 1. Figure 4 depicts the comparison of errors. The errors of the ultrasonic sensor are represented by the red line; the encoder errors, estimated as the difference between the average of the encoder’s signal and the target value, is represented by the blue line; the errors estimated by sensor data fusion are represented by the orange line. The estimated location is very close to the target. The average error obtained by means of the sensor data fusion method is lower than the errors from the single simulated sensors. The total measurement error has been reduced by up to ten times using SDF. The following section describes the prototype built to validate the results obtained from the HIL simulation. 5. THE HANDLING DEVICE The structure of the prototype (Figure 5) is composed of three main parts: the sensors, motors with a motor control and a microcontroller board. 5.1. Sensors The measurement system used by the device to self-locate is composed of two incremental encoders and an ultrasonic sensor module. Table 1: Measurements by means of the HIL simulation (mm). Step Encoders Ultrasonic sensor SDF Target 1 100,024 100,105 100,085 100,000 2 199,985 200,042 200,031 200,000 3 299,874 300,112 300,065 300,000 4 399,880 400,031 400,002 400,000 5 499,884 500,078 500,040 500,000 6 599,982 600,074 600,056 600,000 7 700,009 700,104 700,085 700,000 8 800,023 800,045 800,040 800,000 9 900,112 899,798 899,859 900,000 10 999,735 999,967 999,922 1000,000 Figure 4. Comparison between the errors of the generating signals (rotary and ultrasonic sensor) and the estimated position, using sensor data fusion. ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 140 The ultrasonic sensor module, HC-SR04 (see Table 2), incorporates a transmitter, a receiver and a control circuit. It is mounted on the front of the device’s chassis and is used to measure the distance between itself and a reference fixed in a known position. The measurement is based on quantifying the reflection time of the ultrasonic waves (40 kHz). Thus, a piezoelectric transducer emits ultrasonic waves that are reflected when they detect an object. The reflection waves, called echoes, are bounced back to the receiver. The built-in microcontroller then calculates the time interval between the sending of the signals and the returning echoes in order to determine the distance to the reference. The incremental encoders are used to measure the angle rotation of the motor shafts. The linear displacement of the device is then calculated by means of a conversion based on the wheels’ radius and the gear ratio. The encoders mounted on the proposed device (see Table 3) are composed of two main parts: a board with a double-channel Hall-effect sensor and a six-pole magnetic disc. The magnetic disc is fitted directly onto the motor shaft and moves with it. The board, fixed in front of the magnet, senses the variation in the magnetic flow resulting from the spinning disc, providing 12 counts per revolution of the gearmotor shaft. 5.2. Motors and motor control The handling device is equipped with two miniature high- power, 6 V brushed DC motors (see Table 4). The motors are characterised by a rear shaft to mount the encoders. The cross section is 10 x 12 mm, and the output shaft is 9 mm long and 3 mm in diameter with a D shape. The DC motors are controlled by an Adafruit motor shield v 2.3. The employed shield has a fully dedicated PWM driver chip onboard. All the motor and speed controls are handled by this chip through the 12 C protocol, leaving the Arduino interrupt pins available to control the encoders. In fact, to drive multiple motors, only the SDA and SCL data pins and the GND and VCC power pins are required. 5.3. Microcontroller board The device’s equipment is controlled by an Arduino Uno rev3 board. It can interact with several commercial off-the-shelf (COTS) components, offering various possibilities, with applications for educational projects [36], process control [37],[38], networked control [39] and in the robotic field [40],[41]. The selected board is based on the ATmega328P microprocessor. It includes six analogue pins and 14 digital input/output pins, of which six can be used as PWM outputs. It includes a 16 MHz quartz crystal, a USB port for easy connectivity, a power jack, an ICPS header and a reset button. The control code of the device has been written in a MatLAB/Simulink® environment. Programming is made easier by the MatLAB/Simulink® Support Package for Arduino® Hardware. It enables the use of MatLAB to programme the Arduino board and to control the hardware using custom add- on libraries directly from MatLAB. The device’s chassis was manufactured in acrylonitrile butadiene styrene (ABS) through fused deposition modelling (FDM) technology. The chassis is composed of a bottom plate and a top plate. The control unit, composed of the Arduino board and the motor-shield, is mounted on the top plate together with the ultrasonic sensor, which is placed on the front. The two motor assemblies, composed of an encoder, DC motor and wheel, are mounted on the bottom plate. Two rail-wheels are Table 2: HC-SR04 datasheet. Property Value Operating Voltage 5 V Operating Current < 15 mA Operating Frequency 40 kHz Max measuring distance 4500 mm Min measuring distance 20 mm Accuracy 3 mm Measuring Angle 15° Trigger Input Signal Trigger 10 µs pulse TTL Echo Output Signal Echo signal PWM TTL Dimensions 45.5 x 20.5 x 15.3 mm Table 3: Rotary encoder datasheet. Property Value Operating Voltage 2.7 - 18 V Count Per Revolution 12 Weight (board + disc) 1 g Dimension (board) 10.6 x 11.6 mm Table 4: Gearmotor datasheet. Property Value Operating Voltage 6 V Weight 9.5 g Shaft Diameter 3 mm Gear Ratio 100:1 No Load Speed @6 V 320 rpm No Load Current @6 V 120 mA Stall Current @6 V 1600 mA Stall Torque @6 V 2.2 kg*cm Figure 5. Prototype of the device. ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 141 assembled in their housings on the front and on the rear of the bottom plate. The device is equipped with a separate power supply: a 9 V battery placed on the top plate to power the sensors and the control unit and a 6 V battery pack placed on the bottom plate to power the DC motors (Figure 6). 6. VALIDATION The prototype was used to validate the simulated results. As with the simulation, we have set the step forward at 100 mm and the device stroke at a meter. The device reference has been set at the centre of the wheels’ axis. The ultrasonic sensor was calibrated taking the laboratory temperature of 25 °C into account and using the adjusted speed of sound. To evaluate the accuracy of the measurements, a calibrate rail has been used. Measurement values for each step are shown in Table 5. Figure 7 depicts a comparison of the errors: the errors of the ultrasonic sensor are represented by the red line; the errors of the encoders, estimated as the difference between the average of the two encoders’ measurements and the target value, are represented by the blue line; and the errors estimated by sensor data fusion are represented by the orange line. The errors related to the ultrasonic sensor measurement display a high level of variation with an average error greater than 5 mm. The behaviour of the ultrasonic sensor is strongly influenced by the temperature. Therefore, the fluctuations of the measurement are likely to be attributable to the uncontrolled temperature of the laboratory together with the low level of accuracy of the sensor. There are less errors related to the encoder measurement. However, the measurement value is usually higher than the value of the target. This behaviour is probably attributable to the sequential code of the S2 task. The average error is around 2 mm. The estimation obtained through SDF is very close to the target with an average error of less than 1 mm. Therefore, the estimated location is more accurate than the measurement of the single sensor. The improvement in the estimate is related to the Kalman-filter algorithm, which considers the unreliability of the ultrasonic sensor in terms of standard deviation. The result is a reliable location with a 0.1% error/meter. Considering the accuracy of the sensors involved, the obtained results are certainly positive. Figure 8 shows the results obtained from the HIL simulation compared with the results obtained from the validation performed with the above-mentioned experimental setup. Figure 6. Components of the handling device: 1) Adafruit motor shield; 2) Arduino board; 3) Spacers; 4) 9 V battery-mounting bracket; 5) 9 V battery; 6) HC-SR04; 7) Breadboard; 8) Breadboard support; 9) Top plate; 10) 6 V battery-mounting bracket; 11) Spacers; 12) 6 V battery pack; 13) Gearmotor- mounting bracket; 14) Rail-wheels support; 15) Gearmotor; 16) Wheel; 17) Rail-wheel; 18) Rotary encoder; 19) Bottom plate. Figure 7. Comparison between the errors of position measurement (rotary encoder and ultrasonic sensor) and the final estimated position through SDF. Table 5: Measurement data (mm). Step Encoders Ultrasonic sensor SDF Target 1 100,531 98,725 100,486 100,000 2 200,419 200,788 200,393 200,000 3 300,243 303,646 300,451 300,000 4 400,164 403,644 400,654 400,000 5 499,884 499,939 500,330 500,000 6 599,614 594,985 599,494 600,000 7 700,494 686,141 698,659 700,000 8 801,895 787,756 798,493 800,000 9 903,932 890,588 899,212 900,000 10 1004,778 994,450 999,294 1000,000 Figure 8. Simulation errors versus validation errors. ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 142 The three diagrams provide a comparison for each measurement tool (encoder, ultrasonic sensor and SDF). The first diagram, relating to the encoder, depicts close values up to the seventh step. Then, the sequential code, with an error source not considered in the simulation, causes the values to deviate. Therefore, in future developments, the simulation will also take into consideration the recording time, which is the delay between the measurement time and the stopping time. The second diagram, concerning the ultrasonic sensor, shows different values due to the low level of accuracy of the sensor coupled with the uncontrolled temperature of the room. The third diagram shows the behaviour of the SDF. In both cases (simulation and validation), the estimates are close to the target. 7. CONCLUSION The present work tackles the problem of large-sized object measurement by proposing a method to correctly locate and track a handling device for reverse engineering systems. The method aims to improve the accuracy of the point-cloud realignment by tracking a reverse engineering system that moves alongside a handling device. The proposed method is based on the sensor data fusion of redundant sensors by means of a Kalman filter. The method was verified through a hardware-in-the-loop simulation, using an Arduino Uno rev3 board programmed in a MatLAB/Simulink® environment. The results show that the sensor data fusion accuracy is better than that of the simulated single sensors. A prototype handling device was developed to validate the results obtained from the simulation. The prototype was equipped using low-cost hardware. A one-meter-long calibrate rail was used to test the prototype’s behaviour. The tests demonstrated an accuracy of 0.1% error/meter, which was better than the accuracy of the measurement sensors. The simulation and validation results are comparable since, in both cases, the accuracy obtained through SDF is better than that of the single sensor measurements. Considering the use of low-cost hardware, the results are encouraging and show the possibility for future improvements. Therefore, the next step is the development of a real-sized device integrated into a reverse engineering system. Better results, in terms of accuracy and reliability, may be reached using more sensors and microcontrollers. Furthermore, the development of a device able to perform planar movements would be useful for a large number of applications in the metrology field. ACKNOWLEDGEMENT The present work was developed with the economic support of MIUR (Italian Ministry of Universities and Research) within the remit of project ARS01_00861, ‘Integrated collaborative systems for a smart factory – ICOSAF’. REFERENCES [1] Z. Geng, B. Bidanda, Review of reverse engineering systems– current state of the art, Virtual and Physical Prototyping, 12(2), (2017), pp. 161-172. DOI: https://doi.org/10.1080/17452759.2017.1302787 [2] Z. M. Bi, L. Wang, Advances in 3D data acquisition and processing for industrial applications, Robotics and Computer- Integrated Manufacturing, 26(5), (2010), pp. 403-413. DOI: https://doi.org/10.1016/j.rcim.2010.03.003 [3] L. De Luca, P. Véron, M. Florenzano, Reverse engineering of architectural buildings based on a hybrid modeling approach, Computers & Graphics, 30(2), (2006), pp. 160-176. DOI: https://doi.org/10.1016/j.cag.2006.01.020 [4] V. Barrile, G. Bilotta, D. Lamari, 3D models of cultural heritage, International Journal of Mathematical Models and Methods in Applied Sciences,11, (2017), pp. 1-8. [5] M. R. James, S. Robson, Straightforward reconstruction of 3D surfaces and topography with a camera: accuracy and geoscience application, Journal of Geophysical Research: Earth Surface, 117, (2012), F03017. DOI: https://doi.org/10.1029/2011JF002289 [6] J. A. García-Esteban, B. Curto, V. Moreno, I. González-Martín, I. Revilla, I., A. Vivar-Quintana, A digitalization strategy for quality control in food industry based on artificial intelligence techniques, IEEE 16th INDIN, Porto, Portugal, 18-20 July 2018, pp. 221-226. DOI: https://doi.org/10.1109/INDIN.2018.8471994 [7] R. De Santis, A. Gloria, T. Russo, A. Varriale, M. Veltri, P. Balleri, F. Mollica, F. Riccitiello, L. Ambrosio, Reverse engineering of mandible and prosthetic framework: effect of titanium implants in conjunction with titanium milled full arch bridge prostheses on the biomechanics of the mandible, Journal of Biomechanics, 47(16), (2014), pp. 3825-3829. DOI: https://doi.org/10.1016/j.jbiomech.2014.10.020 [8] M. A. Ares, S. Royo, J. Vidal, L. Campderros, D. Panyella, F. Peréz, S. Vera, M. A. Gonzalez Ballester, 3D scanning system for in-vivo imaging of human body, Fringe 2013 - 7th International Workshop on Advanced Optical Imaging and Metrology, Nurtingen, Germany, 2014, pp. 899-902. DOI: https://doi.org/10.1007/978-3-642-36359-7_168 [9] P. Fucile, I. Papallo, G. Improta, R. De Santis, A. Gloria, I. Onofrio, V. D’Antò, S. Maietta, T. Russo, Reverse engineering and additive manufacturing towards the design of 3D advanced scaffolds for hard tissue regeneration, II Workshop on Metrology for Industry 4.0 and IoT (MetroInd4.0&IoT), IEEE, Napoli, Italy, 4-6 June 2019, pp. 33-37. DOI: https://doi.org/10.1109/METROI4.2019.8792891 [10] G. Döllner, P. Kellner, O. Tegel, Digital mock-up and rapid prototyping in automotive product development, Journal of Integrated Design and Process Science, 4(1), (2000), pp. 55-66. [11] S. Gerbino, D. M. Del Giudice, G. Staiano, A. Lanzotti, M. Martorelli, On the influence of scanning factors on the laser scanner-based 3D inspection process, International Journal of Advanced Manufacturing Technology, 84(9-12), (2016), pp. 1787- 1799. DOI: https://doi.org/10.1007/s00170-015-7830-7 [12] P. Franciosa, A. Palit, F. Vitolo, D. Ceglarek, Rapid response diagnosis of multi-stage assembly process with compliant non- ideal parts using self-evolving measurement system, Procedia CIRP, 60, (2017), pp. 38-43. DOI https://doi.org/10.1016/j.procir.2017.01.035 [13] A. Lanzotti, F. Renno, M. Russo, R. Russo, M. Terzo, Virtual prototyping of an automotive magnetorheological semi-active differential by means of the reverse engineering techniques, Engineering Letters, 23(3), (2015), pp 115-124. [14] A. Lanzotti, F. Carbone, G. Di Gironimo, S. Papa, F. Renno, A. Tarallo, R. D’Angelo, On the usability of augmented reality devices for interactive risk assessment. International Journal of Safety and Security Engineering, 8(1), (2018), pp. 132-138. DOI: https://doi.org/10.2495/SAFE-V8-N1-132-138 [15] C. Labate, G. Di Gironimo F. Renno, Plasma facing components: a conceptual design strategy for the first wall in FAST tokamak, Nuclear Fusion, 55(11), (2015), 113013. DOI: https://doi.org/10.1088/0029-5515/55/11/113013 [16] A. Lanzotti, F. Carbone, S. Grazioso, F. Renno, M. Staiano, A new interactive design approach for concept selection based on expert opinion, International Journal on Interactive Design and https://doi.org/10.1080/17452759.2017.1302787 https://doi.org/10.1016/j.rcim.2010.03.003 https://doi.org/10.1016/j.cag.2006.01.020 https://doi.org/10.1029/2011JF002289 https://doi.org/10.1109/INDIN.2018.8471994 https://doi.org/10.1016/j.jbiomech.2014.10.020 https://doi.org/10.1007/978-3-642-36359-7_168 https://doi.org/10.1109/METROI4.2019.8792891 https://doi.org/10.1007/s00170-015-7830-7 https://doi.org/10.1016/j.procir.2017.01.035 https://doi.org/10.2495/SAFE-V8-N1-132-138 https://doi.org/10.1088/0029-5515/55/11/113013 ACTA IMEKO | www.imeko.org December 2020 | Volume 9 | Number 4 | 143 Manufacturing, 12(4), (2014), pp. 1189-1199. DOI: https://doi.org/10.1007/s12008-018-0482-8 [17] A. Tarallo, R. Mozzillo, G. Di Gironimo, A. Aiello, M. Utili, I. Ricapito, Preliminary piping layout and integration of European test blanket modules subsystems in ITER CVCS area, Fusion Engineering and Design, 93, (2015), pp. 24-29. DOI: https://doi.org/10.1016/j.fusengdes.2015.02.021 [18] E. Martelli, A. Del Nevo, P. Arena, G. Bongiovì, G. Caruso, P. A. Di Maio, M. Eboli, G. Mariano, R. Marinari, F. Moro, R. Mozzillo, F. Giannetti, G. Di Gironimo, A. Tarallo, A. Tassone, S. Villari, Advancements in DEMO WCLL breeding blanket design and integration, International Journal of Energy Research, 42, (2018), pp. 27-52. DOI: https://doi.org/10.1002/er.3750 [19] F. Vitolo, M. Martorelli, S. Gerbino, S. Patalano, A. Lanzotti, Controlling form errors in 3D printed models associated to size and position on the working plane, International Journal of Interact Design and Manufacturing, 12(3), (2018), pp. 969-977. [20] S. Son, H. Park, K. H. Lee, Automated laser scanning system for reverse engineering and inspection, International Journal of Machine Tools and Manufacture, 42(8), (2012), pp. 889-897. DOI: https://doi.org/10.1016/S0890-6955(02)00030-5 [21] E. Trakić, B. Šarić, A. Osmanović, S. Lovrić, Integration mechatronic components of laser triangulation for 3D digitalization of the object, International Journal of Mechanical and Mechanics Engineering, 11(2), (2011), pp. 1-6. [22] X. Zexiao, W. Jianguo, Z. Qiumei, Complete 3D measurement in reverse engineering using a multi-probe system, International Journal of Machine Tools and Manufacture, 45(12-13), (2005), pp. 1474-1486. DOI: https://doi.org/10.1016/j.ijmachtools.2005.01.028 [23] Hexagon, Leica T-Scan 5. Online [Accessed 30 October 2020]. https://www.hexagonmi.com/en-GB/products/3d-laser- scanners/leica-tscan-5 [24] Creaform, Optical coordinate measuring system: MaxSHOT 3D. Online [Accessed 30 October 2020]. https://www.creaform3d.com/en/metrology-solutions/optical- measuring-systems-maxshot-3d [25] A. Paoli, A. V. Razionale, Large yacht hull measurement by integrating optical scanning with mechanical tracking-based methodologies, Robotics and Computer-Integrated Manufacturing, 28(5), (2012), pp. 592-601. DOI: https://doi.org/10.1016/j.rcim.2012.02.010 [26] S. Barone, A. Paoli, A. V. Razionale, Shape measurement by a multi-view methodology based on the remote tracking of a 3D optical scanner, Optics and Lasers in Engineering, 50(3), (2012), pp. 80-390. DOI: https://doi.org/10.1016/j.optlaseng.2011.10.019 [27] H. Du, X. Chen, J. Xi, C. Yu, B. Zhao, Development and verification of a novel robot-integrated Fringe Projection 3D scanning system for large-scale metrology, Sensors, 17(12), (2017), p. 2886. DOI: https://doi.org/10.3390/s17122886 [28] J. Shi, Z. Sun, S. Bai, Large-scale three-dimensional measurement via combining 3D scanner and laser rangefinder, Optical Society of America, 54(10), (2015), pp. 2814-2823. DOI: https://doi.org/10.1364/AO.54.002814 [29] A. Rega, S. Patalano, F. Vitolo, S. Gerbino, A sensor data fusion- based locating method for reverse engineering scanning systems, II Workshop on Metrology for Industry 4.0 and IoT (MetroInd4.0&IoT), IEEE, Napoli, Italy, 4-6 June 2019, pp. 123- 126. DOI: https://doi.org/10.1109/METROI4.2019.8792864 [30] F. Vitolo, S. Patalano, A. Rega, A. Lanzotti, An autonomous and self-locating handling device for reverse engineering systems, 20th International Conference on Research and Education in Mechatronics (REM), Wels, Austria, 23-24 May 2019, pp. 1-7. DOI: https://doi.org/10.1109/REM.2019.8744116 [31] A. Weckenmann, X. Jiang, K. D. Sommer, U. Neuschaefer-Rube, J. Seewig, L. Shaw, T. Estler, Multisensor data fusion in dimensional metrology, CIRP Annals, 58(2), (2009), pp. 701-721. DOI: https://doi.org/10.1016/j.cirp.2009.09.008 [32] R. E. Kalman, A new approach to linear filtering and prediction problems, Transaction of the ASME Journal of Basic Engineering, 82(1) (Series D), 1960, pp.35-45. [33] C. K. Chui, G. Chen, Kalman Filtering, Springer, Cham, 2017, ISBN 978-3-319-47612-4. [34] C. Hu, W. Chen, Y. Chen, D. Liu, Adaptive Kalman filtering for vehicle navigation, Journal of Global Positioning Systems, 2(1), (2003), pp. 42-47. DOI: https://doi.org/10.5081/jgps.2.1.42 [35] J. Z. Sasiadek, P. Hartana, Sensor data fusion using Kalman filter, Proc. of the Third International Conference on Information Fusion, Paris, France, 10-13 July 2000, 2(5), pp. 19-25. DOI: https://doi.org/10.1109/IFIC.2000.859866 [36] J. Sarik, I. Kymissis, Lab kits using the Arduino prototyping platform, IEEE Frontiers in Education Conference, Washington, DC, USA, 27-30 October 2010, pp. T3C-1 – T3C-5. DOI: https://doi.org/10.1109/FIE.2010.5673417 [37] M. J. Arizaga, J. de la Calleja, R. Hernandez, A. Benitez, Automatic control for laboratory sterilization process based on Arduino hardware, 22nd International Conference on Electrical Communications and Computers, Cholula, Puebla, Mexico, 27-29 February 2012, pp. 130-133. DOI: https://doi.org/10.1109/CONIELECOMP.2012.6189895 [38] S. Krivic, M. Hujdur, A. Mrzic, S. Konjicija, Design and implementation of fuzzy controller on embedded computer for water level control, MIPRO, Opatija, Croatia, 21-25 May 2012, pp. 1747-1751. Online [Accessed 03 December 2020] https://ieeexplore.ieee.org/document/6240931/ [39] V. Georgitzikis, O. Akribopoulos, I. Chatzigiannakis, Controlling physical objects via the internet using the Arduino platform over 802.15.4 networks, IEEE Latin America Transactions, 10(3), 2012, pp. 1686-1689. DOI: https://doi.org/10.1109/TLA.2012.6222571 [40] G. Guo, W. Yue, Autonomous platoon control allowing range limited sensors, IEEE Trans. on Vehicular Technology, 61(7), 2012, pp. 2901-2912. DOU: https://doi.org/10.1109/TVT.2012.2203362 [41] P. A. Vignesh, G. Vignesh, Relocating vehicles to avoid traffic collision through wireless sensor networks, 4th International Conference on Computational Intelligence, Communication Systems and Networks, Phuket, Thailand, 24-26 July 2012, pp. 407- 412. DOI: https://doi.org/10.1109/CICSyN.2012.80 https://doi.org/10.1007/s12008-018-0482-8 https://doi.org/10.1016/j.fusengdes.2015.02.021 https://doi.org/10.1002/er.3750 https://doi.org/10.1016/S0890-6955(02)00030-5 https://doi.org/10.1016/j.ijmachtools.2005.01.028 https://www.hexagonmi.com/en-GB/products/3d-laser-scanners/leica-tscan-5 https://www.hexagonmi.com/en-GB/products/3d-laser-scanners/leica-tscan-5 https://www.creaform3d.com/en/metrology-solutions/optical-measuring-systems-maxshot-3d https://www.creaform3d.com/en/metrology-solutions/optical-measuring-systems-maxshot-3d https://doi.org/10.1016/j.rcim.2012.02.010 https://doi.org/10.1016/j.optlaseng.2011.10.019 https://doi.org/10.3390/s17122886 https://doi.org/10.1364/AO.54.002814 https://doi.org/10.1109/METROI4.2019.8792864 https://doi.org/10.1109/REM.2019.8744116 https://doi.org/10.1016/j.cirp.2009.09.008 https://doi.org/10.5081/jgps.2.1.42 https://doi.org/10.1109/IFIC.2000.859866 https://doi.org/10.1109/FIE.2010.5673417 https://doi.org/10.1109/CONIELECOMP.2012.6189895 https://ieeexplore.ieee.org/document/6240931/ https://doi.org/10.1109/TLA.2012.6222571 https://doi.org/10.1109/TVT.2012.2203362 https://doi.org/10.1109/CICSyN.2012.80