## 3 Results  
To validate the approach used to model, in the simulation, the non-rigid joints of the robot, the elastic behavior was evaluated.  
A simple setup to replicate the test described in [20], using the model of the improved non-rigid joint, was built in the simulator with a single (non-actuated) joint connecting two links (one of them fixed); this joint was set as a spring.  
The parameters of this spring-mass system include mass (0.400 kg), spring constant \(k\) (11.5 N/m), the viscous friction coefficient \(B_{v}\) (0.210 N\(\cdot\)m-s, which corresponds to \(B_{v}\) of the rotary damper), and the spring's torque \(f_{c}\) (0.024 N\(\cdot\)m).  
The oscillatory response of the system was observed by pulling the free link up to a defined position and releasing it (the pull motion was performed by another link driven by a generic motor). The obtained results are shown in Figure 23.  
The settling time is approximately 188 ms (considering 2% range) and the 98% rise time of around 37 ms. The data collected in the simulation (shown in blue in Figure 23) was compared against the results of the test performed on the real non-rigid joint.  
The mean and maximum absolute errors of the position in simulation compared to the real position are, respectively, 0.017 and 0.113 radians. From the analysis of the plotted results, it is noticeable that, even though with similar waveforms, the response in simulation does not reach the peak value observed in the response from the real joint (consequently generating high absolute errors). This can be explained considering the dead zone of the joint (which is yet to be modeled in simulation). Furthermore, uncertainties that derive from measurements in real settings (e.g., load cell noise) are difficult to model in a simulated environment.  
Measuring the time interval between the first two zero-crossings of both responses showed a difference of 1 ms; the responses stabilize at around the same time. Therefore, it is confirmed that the simulation models the real behavior of the joint.  
The implementation of \(x-y\) control of the robot was first assessed by inputting a set of values for \(v_{r}\), \(v_{n_{r}}\), and \(w_{r}\) (this test required fixing the main body in the simulation environment). Figure 24 shows the obtained positions of the robot legs. It can be visually determined that, according to the speed references given to the robot, the legs are positioned as expected.  
Figure 23: Angular position (rad) over time (s) (simulated non-rigid joint).  
Figure 24: Control in the \(x\) and \(y\) axes: setting the speeds \(v\) (m/s), \(v_{n}\) (m/s), and \(w\) (rad/s) of the robot (all images were taken from the same perspective; the axis in the foreground corresponds to the \(x\)-axis).  
Figure 28: Curve tracking: angular position (rad).  
\begin{table}
\begin{tabular}{l c c} \hline \hline  & **Line** & **Curve** \\ \hline Initial position (m) & (0, 0) & (0, 0) \\ Target position (m) & (4.0, 1.0) & (4.0, 1.0) \\ Inclination (rad) & 0.255 & — \\ Center (m) \(|\) Radius (m) & — & (0.75, 1.25) \(|\) 1.458 \\ \hline \hline \end{tabular}
\end{table}
Table 7: Characteristics of the trajectories presented in Figures 25 and 27.  
Figure 27: Curve tracking: 2D position (m).  
The robot is able to converge to the trajectory it is given and stop at the target position. The absolute errors of the robot's position and angle in relation to the trajectory are summarized in Table 8.  
In addition to the simulation tests, tests on the real robot have already been performed. The following link can be used to observe the robot performing some movements: [[https://youtu.be/0](https://youtu.be/0) xVQSwRMrDs]([https://youtu.be/0](https://youtu.be/0) xVQSwRMrDs), accessed on 30 June 2021.