Real-Time Robot Pose Correction on Curved Surface Employing 6-Axis Force/Torque Sensor

Research on robot trajectory correction on a curved surface has seen a surge in the last two decades to deal with issues in many machining processes. Due to the intricacies involved in complex machining, the real-time correction of robot end-effector position and orientation is highly challenging. The existing approaches are either computationally expensive or inadequate for high accuracy in desired trajectory tracking. Hence, this research explores and implements a novel sophisticated approach, barring minor complications, to empower industrial robots to adjust poses in real-time automatically. In contrast with other studies, the proposed technique does not require any prior geometric information about the workpiece, such as a CAD model or a 3D scan. Our proposed technique relies solely on force/torque sensor feedback information obtained from a 6-axis force/torque sensor installed at the end-effector. When the developed tool comes in contact with the curved surface, the force sensor transmits the data to the pose correction algorithm. The pose correction algorithm estimates the adjustment required to make the tool normal to the surface. The effectiveness and feasibility of the proposed scheme were validated through numerous experiments carried out with a 6-DOF industrial robot. The final results of the curved surface trajectory correction demonstrate that the contact-based robot pose correction has significantly improved. The estimated average error on depth (Z-axis), and angles (Rx, Ry) are 0.7 $mm$ , 0.7°, and 0.9°, respectively.


I. INTRODUCTION
Motion model tracking on curved surfaces has become a vital research interest area of robotics and automation in the last two decades due to its wide range of machining applications such as polishing and deburring [1], [2]. The majority of the manufacturing industries are still using manual approaches for attempting these machining processes, which are costly, time-consuming, and require a high level of skill for maintaining consistency in surface finishing [3], [4], [5]. Constant force tracking is required to be maintained throughout the surface for desired results in such applications, which is a The associate editor coordinating the review of this manuscript and approving it for publication was Saeid Nahavandi . practically onerous task if performed manually by human labor.
The above situation has created a need for more sophisticated approaches in the machining process for fully automating and maintaining constant force on complex geometric surfaces, thereby enhancing the quality of polishing and deburring [6], [7]. CNC machines are one of the more promising solutions which can deliver high accuracy in maintaining a constant force on complex surfaces with adequate stability [8]. Nevertheless, due to the high cost and limited functionality of current CNC machinery, a cutting-edge machine with the ability to handle multiple functions is required to be used for machining operations [9].
A plethora of research articles have been published, employing articulated robots (6-DOF) with sophisticated control algorithms that have the potential to provide full assistance in handling machining operations [10], [11], [12], [13]. This approach gives satisfactory surface finish quality, time, overall cost reduction, and most importantly, convenience in repetitive and adjustable processes [9], [14]. However, tracking a curved surface of a workpiece with a 6-DOF robot while maintaining constant force is highly challenging. Many studies have been published over the years by scientists and scholars to acquire accurate trajectory (correct position and orientation of robot end tool) for a robot that can be employed for applications such as robotic polishing [13], [15]. The practice of industrial robots in machining operations on curved surfaces is a research area that is driven by specific industrial applications.
Research related to trajectory generation, force/position, and other related studies have been investigated by the research community over the years. Interested readers can see the recent control techniques proposed for trajectory tracking [16], [17]. However, the geometric information of the workpiece has not been considered a vital factor so far despite its significance for complex surface finishing. It requires the surface normal profile so that the polishing force can be directed towards the local normal. The geometric surface description is essential to circumvent instability of tool contact with the workpiece and, as a result, maintain constant contact force [18]. For deriving curved surface kinematic constraints, CAD/CAM models and Coordinate Measuring Machines (CMM) [19] have been utilized. However, surface profiles derived through these techniques are not applicable due to fixture uncertainty and coordinates transfer into a known fixed coordinate system. In most cases, the tool orientation is ignored and is supposed to be fixed or generated from a CAD model employing modeling software for replicating the original surface, which is quite challenging. Hence, it is arduous to acquire and process precise geometric information of a complex surface, and absolute error in position and orientation of the desired and actual trajectory is inevitable when the robot runs along the machining trajectory.
The study detailed in this article proposes a novel sensor-based feedback technique with a pose correction algorithm for real-time robot position and orientation correction while tracking curved surfaces. In other words, current robot pose (position and orientation) corrections are investigated in real-time using a pose modification algorithm and a 6-axis force/torque sensor. The data sensed by the force sensor while tracking the curved surface is used as feedback. The derived pose correction algorithm estimates the new corrected position and orientation and retains a specified pose to the surface while simultaneously tracking a target trajectory. Additionally, a handy self-developed robotic tool mounted on the end of the force sensor is employed, which plays a crucial role in adjusting the current robot pose. The results obtained through a series of experiments demonstrate that the robot realized the desired path in real-time with the assistance of feedback information from the force/torque sensor and thereby showcases the viability of curved surface tracking and the accuracy of the algorithm employed. The research has enormous potential to streamline automatic robot industrial applications such as deburring and polishing. The critical contribution of this research is summarized as follows: 1. Designing and manufacturing a compliant robotic tool holder to effectively deal with challenges in machining irregular and curved surfaces (shown in Fig. 1, discussed in detail in Section III.B. 2. Robot pose correction scheme (based on active feedback from a 6-axis force/torque sensor) is presented to improve the quality of machining operations, e.g. polishing on curved surfaces.
3. The effectiveness of the proposed system is validated by conducting numerous experiments employing the experimental setup (demonstrated in Fig. 6).
The rest of the paper is organized as follows, section (II) presents the related work. Section (III) discusses in detail the overview of the proposed system. Section (IV) demonstrates the experimental setup employed to validate the efficiency of the proposed scheme. Section (V) describes the result and discussion of the experimental results. Finally, section (VI) presents the conclusion of the proposed research work.

II. RELATED WORK
Since the advent of the robot manipulator, the issue of addressing uncertainty in the robot end-effector or the attached tool position and orientation has been a vital research topic in robotics. Early studies emphasized only on the issue of regulating the position and orientation of the manipulators and end-effectors.
Prior research studies [20] scrutinize model-based direct force control systems for position-controlled robotic manipulators to realize grinding on flat surfaces. Several other studies have achieved constant force while tracking complex surfaces using conventional constant force control techniques [21], [22]. In addition, a hybrid control algorithm has been proposed to maintain constant contact force between the 90150 VOLUME 10,2022 tool and the workpiece [23]. Recently, T. Zhang et al. [24] proposed a control algorithm based on reinforcement learning to achieve constant force during curved surface tracking. The authors developed a relationship between the contact model and the forces acquired through force sensor feedback for the robot's end effector and the curved surface. An artificial neural network (ANN) was used to estimate the tangential angle between tool and workpiece.
On the other hand, another study proposed and attempted a system calibration and force control technique to enhance machining performance on complex geometric surfaces [25]. In addition, N.H. Shah et al. [26] proposed a novel technique for real-time robot trajectory correction. Laser triangulation sensors are employed to measure the geometry of the workpiece. The study discusses in detail the prototype developed along with the calibration and correction methods of the system.
The trajectory can either be acquired by direct teaching or from 3D laser scanners or CAD models, based on the surface geometry of the workpiece [27], [28], [29], [30]. The advantage of employing a 3D scanner is the acquisition of accurate depth information of the surface. However, most 3D scanners are too expensive, and their output rate is too slow for real-time processing. In addition, the trajectory obtained from these techniques (CAD model and 3D scanner) is always prone to errors due to a variety of reasons, namely: surface complexity, workpiece color, and lighting condition(s), making the technique uncertain for high-precision tasks. Therefore, W. Li et al. [31] proposed a 3-D shape matching technique to fix the actual and target trajectory error for robotic deburring applications. In such techniques, the design model is matched with the point cloud obtained from the laser scanner. Furthermore, H. Song et al. [32], [33] have attempted to bridge the gap with control algorithms. For instance, by employing the Iterative Closest Point (ICP) algorithm to cope with position and orientation error between real and CAD model trajectories.
Conversely, the contact measurement technique was previously presented to acquire the contact state between the robot end-effector tool and the surface of the workpiece. A study proposed an adaptive online method to compute the contact point between tool and workpiece using the F/T sensor. The approach presented was tested on a flat surface. However, no experiments were conducted on the surface of a curved workpiece [34]. Another similar research was conducted for the robot angle correction, and the estimated error value is 5 degree. [35]. In addition, another study documented in the literature is also of focus which estimates contact state with observers [23]. However, designing an efficient and robust observer is challenging. In contrast, the proposed scheme is simple, easy, and robust to implement unlike other previous techniques developed. In addition, the efficiency and practicality have been validated by different experimental scenario which demonstrates that the angle and depth error is significantly reduced than earlier studies such as [35].

III. OVERVIEW OF PROPOSED SYSTEM
This section provides an overview of the proposed system. Geometric description of a complex surface plays a significant role in machining operations such as robotic polishing and deburring. However, obtaining the surface information of a curved workpiece is challenging using conventional approaches. To overcome this issue, the current study proposed a scheme to sense the curved surface and correct the robot tracking trajectory in real-time. The final trajectory can be used for machining operations. A pose correction algorithm is employed to obtain a surface normal between the passive compliant tool holder and the tracking surface using 6-axis force sensor feedback information. The architecture of the proposed system is illustrated in Fig. 2.
The system mainly consists of an industrial robot, a selfdeveloped tool, a force-torque sensor, and a personal computer.

A. ATI FORCE-TORQUE SENSOR
Force/torque sensors-based intelligence methods are evolving rapidly in the robotics industry and play a vital role in real-time active robotic control research [37], [38], [39]. The efficiency of these sensors has a direct effect on force control performance. High accuracy (resolution, sensitivity, linearity), reliability, and the capability to get rid of interference are the critical research factors of force/torque sensors employed in intelligent robotics [40], [41]. For this purpose, numerous force/torque sensor modules have been designed and developed so far by research scholars over the years [42], [43], [44]. Recent work can be seen in [45], [46]. In this study, a 6-axis force/torque sensor was used to sense a complex surface's geometric information in real-time and enable the robot to track the curved surface by maintaining a constant contact force, without any prior geometric information of the workpiece. The proposed method can circumvent the interference of the external environment, decrease the unstable factors, and improve the tracking precision. The force/torque sensor used in this study is a 6-axis force-torque sensor (FT sensor) developed by ATI company to receive the feedback   information for the force control algorithm, as shown in Fig. 3 [36]. One end of the sensor is directly mounted at the robot's flange, and the other end is attached to the tool by screws. The parameter specification of the FT sensor is as follows: the weight of the sensor is 0.3 kg, the height is 25.4 mm, and the diameter is 82 mm. The range and uncertainty of the sensor are given in Table 1.

B. SELF-DEVELOPED TOOL
For this study, a novel tool has been designed and developed. The CAD model and the prototype of the tool are demonstrated in Fig. 1, which demonstrates three main parts of the tool: 1) a spring in the middle which compensates for the depth 2) a ball on the tip of the tool, enabling it to move on the surface smoothly; and 3) a holder which allows for the movement of the solid rod employed inside spring and also enables the tool to mount to the force-torque sensor. The tool is made to be positioned on a force-torque sensor that will be mounted on the robot flange, make contact with the workpiece surface, and provide sensory data to the computer system for the robot's correct pose estimate. The specifications of the self-developed tool are given in Table 2.
The specification plays a vital role in the designing of the overall structure of the tool. Particularly, the spring employed in the proposed self-developed tool is the most essential component. The spring constant is derived using (1).
where F m is the maximum force and x is the maximum depth measurement. The spring constant of 2 N /mm is  computed using these parameters. In addition, ASTM A228 is the material required for the suggested spring. This is the strongest material that is typically chosen for making springs with a relatively tiny wire diameter. Moreover, the material's ultimate tensile stress (UTS) is 2211 MPa for a wire spring with a 1 mm diameter. The diameter of spring wire can be estimated using (2).
where F m represents the maximum force. D is the outer diameter of the spring, K w is the Wahl factor, and σ a is the allowable stress of the material, which is 0.67 from UTS. Using the aforementioned information, the estimated diameter d of the spring's wire is 0.86 mm. However, for better performance and market-standard wire diameter, 1.0 mm d opted for the spring's wire. Furthermore, in order to determine the spring's fatigue, we need to compute the maximum shear stress using (3).
The maximum shear stress is 847 MPa. This is substantially less than allowable shear stress, indicating a low probability of failure. Based on the aforementioned calculation, the standard spring from Misumi with code WT10-40 is selected for the self-developed tool. The specification of the spring are given in Table 3.

C. ROBOT AUTOMATIC CORRECTION OF CURVED SURFACE MOTION TRACKING
In this section, the proposed pose correction algorithm has been discussed in detail. The algorithm adjusts the pose (position and orientation) of the passive compliant tool holder installed at the end-effector of the robot in real-time. In the presented approach, to keep the tool normal to the surface during the operation, the robot end-effector angles (Rx, Ry), and cartesian positions (x, y, z) are adjusted based on the force feedback (Fx, Fy, Fz) (obtained from 6-axis force/torque sensor installed at the robot end-effector). Thus, the robot will maintain constant normal contact with the surface by changing the pose of the robot end-effector. This process will continue until the robot completes tracking the entire workpiece surface. As a result, a new trajectory will generate that can be used for direct machining operations such as polishing.
The proposed system uses a passive compliant tool (having a spring) and a 6-axis force/torque sensor to measure the pose of the robot relative to the normal of the workpiece. A twodimensional free body diagram (FBD) of the proposed system is depicted in Fig. 4. The FBD demonstrates that the tool contact with the curved workpiece causes force reading on the force sensor. The relationship between the force vectors is depicted in (4) whereN represents a normal force. The termsF z ,F x ,F y are the force vectors associated with the force reading on force sensor. When there is no reading onF x orF y , thenN is equal toF z which indicates that the tool is normal to the surface. On the other hand, If there's some reading onF x orF y that signifies that the tool is not normal to the surface. The measured position and orientation of the robot will be used in the pose correction algorithm. For practical implementation, the rotation matrix of the serial robot (6-DOF) [47] is employed in this research to estimate the tool coordinates with respect to the robot base coordinate, refer to (5).
where the terms C and S represents cosine and sine. θ y and θ x are the angles of the robot. Since the target of the operation is to orient the end-effector normal to the surface, angle θ z is irrelevant in this case. The updated (corrected) position, to have normal contact with the workpiece can be obtained by using (6), as shown at the bottom of the next page.
Where the termsX ,Ŷ , andẐ represent the updated (corrected) position of the robot end-effector. The term R is the rotation matrix demonstrated in (5), which is used to transform the tool coordinate system into the robot's flange coordinate system. It's worth noting that just rotation along the x-and y-axis are required to obtain the target coordinates; rotation along the z-axis is zero. Likewise, the terms Rx and Ry refer to the current (before correction) robot endeffector angles. Similarly, the terms x, y, and z denote the current Cartesian position (before correction of the robot endeffector). L T refers to the target length of the passive compliant tool holder to be achieved, or the target distance between the end-effector to the workpiece. L S is the current length of the passive compliant tool. For estimating the current length of the passive compliant tool, (7) is employed.
where L S represents the current length of the passive compliant robotic tool holder. L o is the based length of the passive compliant tool without spring. The length of the spring is measured by the force of the spring ( F s ) which is demonstrated as F z in (7). Likewise, k is the spring constant used in the tool. To conclude, the total current length of the passive compliant robotic tool holder is a combination of the based length and length of the spring. A target force between the passive compliant tool and the surfaces must be maintained during the curved surface tracking motion. As a result, pose correction ( R x , R y are adjustment needed in robot end-effector angles) is required along with Cartesian position correction, which can be obtained VOLUME 10, 2022 using (8) and (9) that is derived from (4).
where, F x , F y , and F z are force information obtained from the 6-axis force/torque sensor. In addition, R x and R y are the adjustment required in the robot end-effector angles (demonstrated as θ in Fig. 4) required to obtain normal to the surface for the robot end-effector without any prior geometric information of the tracking surface. Refer to (8) and (9), the robot pose correction on a complex surface is based on real-time force information obtained from the sensor coordinate system. To simplify the working mechanism of the proposed system, a flow chart is illustrated in Fig. 5. The first step of robot pose correction is to go (Robot) to the home position. Here, the computer algorithm resets the force sensor values, i.e., Fx = 0, Fy = 0, Fz = 0. This step is imperative to remove the tool's weight and gravity forces and ensure accurate measurements. Unlike the Robotiq force/torque sensor, to the best of our knowledge, there is no proper calibration method (real-time) for the 6-axis force/torque sensor used in this study. Thus, the process adopted in this research for resetting the force sensor is as follows: take the average of a couple of iterations of forces/moments data and then subtract it from the current value of the force sensor.
Notably, the reset of the force sensor plays an essential role in the accuracy of experimental findings. Without resetting the force sensor, data cannot be trusted.
In addition, for the safe interaction of the robot and contact environment (workpiece), the position and orientation of the robot end-effector are provided to the robot on the surface through a direct teaching method using a robot teaching pendant. (2nd) The robot's end-effector reaches a point where the robot comes in contact with the workpiece surface, and the force sensor senses the data. The data received by the force sensor is transmitted to the computer through the UART transmission protocol and employed as the input to the angles and position equations, which estimates the adjustment needed for the robot end-effector to rectify the position and orientation and establish normal contact between the robot and workpiece surface. Subsequently, the adjusted position and orientation information are transmitted to the robot controller through the UART transmission protocol to drive the robot's joints to realize a constant contact force on the surface. This process continues until the robot reaches the final point, in other words, to complete the entire trajectory. As a result, a new surface trajectory is created that can be used in robotic machining operations such as polishing and cleaning. For practical implementation and validation of the proposed system, an experimental setup is employed which is presented in the next section.

IV. EXPERIMENTAL SETUP EVALUATION
This section discusses the experimental setup utilized to test the proposed algorithm.

A. HARDWARE SETUP
The suggested scheme of robot pose (position and orientation) correction during tracking the curved surface based on the feedback information of a 6-axis force/torque sensor is implemented using the experimental setup depicted in Fig. 6.
The experimental platform comprised of a HIWIN 6-axis articulated Robot (Model RA605) coupled with a robot controller (Model RCA605), and a teaching pendant. Additionally, a self-developed tool, force/torque sensor (ATI AXIA 80 6-axis F/T sensor), a master computer processing unit (GPU RTX-1060), C++ visual studio 2017 (programming tool), a curved workpiece surface, and a working table is also part of the experimental setup.
The 6-axis industrial robot employed has a total weight of 40 kg, the range of the robot is 710 mm, and the capacity to support a payload of 5 kg, which is adequate to hold the passive compliant robotic tool holder developed for this research, the force/torque sensor, and other supporting parts compulsory for experimentation. Further specification of the robot is given in Table 4.
Furthermore, the robot controller is connected to the manipulator and master computer with the help of an Ethernet cable. TCP/IP protocol is the communication protocol employed to carry information between the robot controller and the personal computer.
As stated earlier, the proposed system is based on the force/torque sensor feedback information in real-time. Therefore, a 6-axis force/torque (FT) sensor is installed between the robot flange and the tool to provide the force feedback information to the depth (z-axis) and angle (Rx, Ry) correction of the robot. A serial communication protocol is utilized for transferring data from sensor to computer with a transmission rate of approximately 100 Hz. For setting serial communication in the computer programming tool, the parameters employed as Baud rate = 115200, Time out = 1, Parity = None, Byte size = Eight bits. It is vital to reset the FT sensor after every experiment to reduce the drift issues and other inertial and gravitational forces for precise output information. The feedback information from the force sensor is provided to the angle correction equations (8) and (9), which estimate the adjustment needed to realize the surface normal between the contact surface and the robot end-effector. It is noteworthy to use a force sensor with high precision and a low threshold for this experiment. In our case, the sensor's threshold is approximately 0.2 N , which proved adequate for our experiments.
The suggested system is summarized as follows: The force sensor feeds back the actual forces when the tool contacts the curved surface. The actual forces and the desired force are applied to the pose correction algorithm. The algorithm estimates the new position and orientation for the robot end-effector in real-time. The estimated position and orientation coordinates are provided to the robot controller to adjust the pose of the robot end-effector. The process will continue until the robot completes the entire surface tracking and will create a new trajectory. The generated trajectory can be used for machining operations. The experimental setup described in this section is used to investigate the system's practical feasibility in the next section.
The proposed surface tracking control methodology relies on the feedback data from the 6-axis force/torque sensor. The sensor measures the forces when a tool comes in contact with a workpiece's surface. The data obtained is send to the pose correction algorithm, operating on the personal computer. The algorithm estimates the adjustment required in the Cartesian position and angles of the robot to keep the contact state and avoid separation or collision during operation. Thus, the robot maintains normal (vertical) contact the surface and moves along the trajectory in real-time. In the entire process, the 6-axis force sensor ensures the system precision and capability of real-time tracking to keep the tool vertical with the contact surface by maintaining constant force such as actual force equal to desired force. As a result, robot pose correction to an unknown environment is eventually accomplished.

B. SELF-DEVELOPED TOOL COORDINATE CALIBRATION
In robot trajectory planning for complex surface tracking, it is mandatory to adjust the coordinate of the 6-axis force/torque to be parallel to the robot flange coordinate; that is, the Z-direction of the sensor is parallel to the z-axis direction of the flange coordinate. To ensure the alignment of both coordinate systems (robot flange and sensor) and obtain TCP (tool center point) of the robot end-effector (self-developed tool), RoboDK software is employed as shown in Fig. 7 (e). In addition, a 3D printed tool is employed as a reference mechanism in the calibration process. Four different pose information of the robot were collected by touching the 3D printed tool head (placed on an even surface) through the robot end-effector 3D printed tool head (having similar length is of the actual ball used in the self-developed tool), demonstrated in Fig. 7 (a to d). The deviation of the tool head coordinate (self-developed tool) from the robot flange coordinate is figured out through the calibration process. The performance of the system is then evaluated on different surfaces which are discussed in detail in the following sections.

C. SINGLE POINT POSE CORRECTION TEST 1) FLAT SURFACE
The pose correction technique was initially tried for a single point on an even surface after obtaining the TCP of the selfdeveloped tool. Next, to evaluate the performance of the system, a benchmark robot pose is established, as shown in Fig. 9 (a). The robot moved from a non-contact point to the desired normal contact point (X = 0, Y = 424, Z = 74, Rx = 180, Ry = 0, Rz = 0). At normal contact with the surface, the average force measured is −12.2 N in z-direction and 0 VOLUME 10, 2022 N in x and y-direction as illustrated in Fig. 8 (a). The force on the z-axis (Fz) is shown in red color, and forces on the x-axis (Fx) and y-axis (Fy) are showcased in blue and orange colors in Fig. 8.
Once the benchmark pose/force is established, random error is added to the benchmark position and orientation using the robot teaching pendant, such as new robot pose is given   Fig. 8(b). Next, the position of the robot with random error added is provided to the robot controller. The end-effector (selfdeveloped tool) made contact with the surface and force sensor feedback on the measured information to the computer in real-time through serial communication.
Using the pose correction algorithm, the position and angle of the robot are adjusted, and obtained a normal contact between the tool and the surface. The robot pose after correction is given as X = 3, Y = 424, Z = 75, Rx = 180, Ry = 0.8, Rz = 0. The force results obtained after correction of the robot pose are shown in Fig. 8 (c). The robot's benchmark, incorrect, and corrected poses can be seen in Fig. 9 (a, b, c), respectively. In single-point correction tests, the maximum deviation between the corrected angle (Rx) and the benchmark angle is 0.8 • .

2) SLOPE SURFACE
A feasible approach to measure the performance of the surface tracking angle correction of the proposed system is to assess it on a sloped surface with a known angle, as shown in Fig. 10. (a). Fig. 10 (a) demonstrates when the robot comes in contact with the surface of the slope, i.e., the orientation of the robot is 180 • (Rx) and 0 • (Ry) at this point. It is important to note that, the angle of the inclined surface is 15 • . Thus, the robot requires to rotate the joint (4th) to adjust the angle from 0 • (Ry) to 15 • (Ry) based on the sensor feedback data as depicted in Fig. 10 (b). The same explanation goes for the angle (Rx) of the robot.
The maximum angle deviation from the desired angle (15 • ) is approximately 1.5 • (Ry) and 0.7 • (Rx). The experimental  results of the angle (Rx, Ry) validation on benchmark octa-surface with 15 • offset are shown in Fig. 11 (a to d). Fig. 11 (a) showcases the current pose of the robot (robot orientation at current pose is Rx = 180 • , Ry = 0 • , Rz = 0 • , and Fig. 11 (b) demonstrates the corrected pose of the robot (180 • , 13.5 • , 0 • ). The ideal pose of the robot for this surface is 180 • , 15 • , 0 • (Rx, Ry, Rz). A similar explanation goes for Fig. 11 (c and d). The experimental results demonstrate the performance of the proposed approach. The root mean square error of both Rx and Ry for several experimental trials are measured as 0.13 • and 0.01 • .

V. RESULTS AND DISCUSSION
The proposed surface tracking control methodology relies on the feedback data from the 6-axis force/torque sensor. The sensor measures the forces when a tool comes in contact with a workpiece's surface. The data obtained is send to the pose correction algorithm, operating on the personal computer. The algorithm estimates the adjustment required in the Cartesian position and angles of the robot to keep the contact state and avoid separation or collision during the operation. Thus, the robot maintains normal (vertical) contact with the surface and moves along the trajectory in real-time. In the entire process, the 6-axis force sensor ensures the system precision and capability of real-time tracking to keep the tool vertical with the contact surface by maintaining constant force such as actual force equal to desired force. As a result, robot pose correction to an unknown environment is eventually accomplished.
To demonstrate the robustness and repeatability of the proposed technique, two different real-time experimental scenarios were used to evaluate the performance of the proposed scheme. Results obtained from these experiments are discussed in detail in the following sections.

A. EXPERIMENTAL TRAILS ON A FLAT SURFACE
Unlike the previous experiments, the robot moves along x-direction at a constant speed and adjusts the error in depth (z-axis) and angles Rx (α) and Ry (β) based on the force sensor data received at each point in real-time. The concept of the experiment is similar to the experiments presented in the earlier section. When the robot reaches the current pose on the workpiece surface. The force sensor measures the forces at that particular point. The pose correction algorithm estimates the adjustment required to obtain normal angles between the robot end-effector and the surface. During trajectory tracking, the displacement (z-axis) and the angles Ry and Rx of the robot will change in real-time based on the FT sensor feedback. Consequently, the tool will be vertical to the surface of the workpiece throughout trajectory tracking without any prior geometric information of the workpiece.
For validation, several trials were conducted to study the performance of the proposed approach on a flat surface. The initial benchmark trajectory was generated with the help of the robot teaching pendant, containing a total of 10 points along the x-direction (from −61 mm to 31 mm with VOLUME 10, 2022  a difference of 10 mm). The displacement in the y-coordinate and z-coordinate is unchanged in the benchmark trajectory. To test the effectiveness of the proposed scheme, a range of disturbances in the benchmark trajectory's depths and angles were added. The maximum angle error incorporated is −11.6 • , and the minimum angle added is −5.6 • . Finally, the trajectory with random errors was provided to the robot as an input trajectory. During tracking the trajectory, the robot adjusts the error in the depth and angles using the presented scheme. Consequently, a new modified trajectory is generated that can be used for machining operations such as robot-based surface polishing.
The minimum Rx(α) deviation from the target angle is approximately 0 • , while the maximum deviation is approximately −1 • . In contrast, the minimum deviation of angle Ry(β) is around −0.1 • , and the maximum deviation is roughly −1.6 • , respectively. The depth's minimum and maximum difference between the target and actual is approximately −0.4 and −1.3 mm, respectively.
The average error (the difference between the benchmark and corrected pose) of the trajectory at each point is given in Table 5.
The absolute average error of Z, Rx, and Ry during the entire even surface trajectory are measured as 0.7 mm, 0.9 • , and 0.8 • , respectively.
The three different trajectories (benchmark, error, and corrected) obtained are directed to the robot from the personal  computer one by one and painted on a white page using a painting brush gripped by a 3D printed part. The brush holding part is adjustable, and the length of the paintbrush can be tuned to have a matching depth of the actual tool (self-developed tool) used in this research. Fig. 13 (a to j) demonstrates the painting of the entire benchmark robot trajectory. The red rounded rectangle shows the 4th joint of the robot (6-DOF) which is responsible for the rotation of angle (Ry) in the robot employed in this research. Fig. 14 (a to j) demonstrates the painting of the incorrect trajectory (incorporated random error). The deviation of joint 4th from the benchmark trajectory poses (Fig. 13 (a to j)) can be seen in the green rounded rectangle showcased in Fig. 14 (a to j). In addition, Fig. 15 (a to j) shows the painting of the corrected trajectory (obtained using the pose correction algorithm). The joint 4th deviation is reduced significantly and obtained the benchmark trajectory poses (Fig. 13 (a to j)), which can be seen in the blue rounded rectangle as illustrated in Fig. 15 (a to j).  The results obtained are utilized to develop a confidence interval for evaluation of the presented scheme's robustness and re-usability. Using (10) to create interval for evaluating curved surface experimental results.
where CI represents confidence interval andx denotes the average value. Additionally, s is the standard deviation, z is the confidence level, and n is the number of trials. With 0.95 confidence level the absolute interval for depth is The lower bound of the confidence interval is set to 0 because that's the ideal error.

B. EXPERIMENTAL TRAILS ON A CURVED SURFACE
The pose correction algorithm is then employed on the curved surface, as demonstrated in Fig. 18. The curved workpiece employed is made up of steel. The thickness of the workpiece is 5 mm. The diameter of the workpiece is 345 mm. Additionally, the minimum deformation force required is 60 N , which is substantially higher than the maximum force of the proposed self-developed tool. The rest of the concept and experimental methodology are similar to the flat surface workpiece experiments discussed previously in this section. The robot moves along the x-direction with constant speed during the curved surface tracking. The sensor and robot end-effector co-ordinates system maintain the same posture during tracking. The robot starts from a non-contact point and reaches the contact point on the curved surface of the workpiece. At the contact point, the force sensor senses the forces (Fx, Fy, Fz) and provides the force feedback information to the correction algorithms, refers to (6), (8), and (9). The algorithm estimates the adjustment needed to obtain the normal pose of the robot end-effector at that particular point. This process repeats at each trajectory point until the robot completes the trajectory. This newly obtained trajectory can be employed for machining applications such as polishing.
The trajectory obtained through the proposed pose correction algorithm ensures the safety of the machining tool and the workpiece. As mentioned in earlier sections, to the best of VOLUME 10, 2022 our knowledge, there is no gold standard approach available to compare the pose correction results realized by using the algorithm employed in this research. Thus, to demonstrate the feasibility of the presented approach on a curved surface similar approach will be followed. The experiments were conducted in 3 different phases. The benchmark trajectory was defined for the curved surface in the first stage. Then random errors in depth (z-axis) and angles were incorporated through the direct teaching method to the benchmark pose of the robot along the entire trajectory. The obtained incorrect trajectory was provided to the robot to track it and make the necessary correction to obtain the benchmark trajectory and validate the method.
The results of the experiment for position and orientation absolute error between benchmark values and corrected values are given in Table 6 and are illustrated in Fig. 18. The benchmark trajectory is demonstrated in blue, the corrected trajectory is showcased in orange, and the trajectory having the error is shown in red in Fig. 18.
The maximum and minimum average error in depth (z-axis) is 1.2 and 0.2 mm. On the other hand, the maximum deviation of angles is 2.5 • and 2.1 • while the minimum deviation is 0.1 • and 0.2 • , respectively.
To evaluate the robustness and re-usability of the proposed system the absolute average error of Z , R x , and R y of the curved surface must be fitted in with the confidence interval that is already discussed in the preceding section. The absolute average error in the curved surface experiments are Z = 0.7 mm, R x = 0.7 • , and R y = 0.9 • , which is fitted with the confidence interval.
Testing the proposed scheme on different experimental scenarios demonstrate that the absolute error has significantly reduced than documented in the previous research study, that acquired a maximum angle error of 5.0 • [35]. In addition, the proposed scheme is simple and easy to implement in contrast to earlier work documented in the literature, refer to [23]. Moreover, the study has advantages over non-contact approaches such as camera sensors, it is challenging to reach high precision contact force control standards with its measurement accuracy. Additionally, occlusion exists, which could result in measurement failure during contact procedures. [48], [49].
Furthermore, Fig. 19, illustrates the curved robot surface tracking experiments before and after correction. For example, Fig. 19 (a and c) demonstrates the robot's incorrect pose (before correction). This is because the robot's pose is not normal to the contact surface. In contrast, Fig. 19(b and d) shows the experimentally corrected pose of the robot employing the proposed system. The outcomes ensure that the method is practical and simple for robotic machining tasks such as polishing curved surfaces.

VI. CONCLUSION
Geometric information of curved surfaces plays a vital role in machining operations. However, real-time robot tracking on a curved surface is highly challenging. This research aims to develop a technique to provide a state-of-the-art, simple and efficient solution to this problem. A tool holder has been designed and developed to be attached to a robotic arm end-effector. The force sensor is mounted between the robot flange and the compliant tool holder, driven by a pose correction algorithm. The algorithm estimates and automatically makes the adjustment required in the depth (z-axis) and angles (Rx, Ry). This ensures that the tool will remain normal to the contact surface during tracking/machining on a curved surface. The algorithm was tested and verified by experiments performed using a 6-axis articulated robot. According to the experimental findings, the maximum and minimum absolute error obtained along the curved surface in depth (z-axis) is 1.2 mm and 0.2 mm respectively. On the other hand, the maximum deviation of angles (α, β) are observed as 2.5 • and 2.1 • and the minimum deviation is 0.1 • and 0.2 • respectively. The absolute average error of Z, Rx, Ry are measured as 0.7 mm, 0.7 • , and 0.9 • . This study demonstrates that the proposed technique is robust and has enormous potential to streamline automatic robot industrial applications such as deburring and polishing.
It has been observed that friction affects the experimental results along the robot's axis of movement, which can be further improved in the future by reducing the friction between the tool head and the contact surface of the workpiece. In addition to which, due to several changes in the current force/torque sensor such as zero drift (which is a change in the output of the sensor which is not due to any variation in the input), the authors intend to develop and test a specialized force/torque sensor for this kind of application in the future work.