## 7 Simulations Results  
To evaluate the performance of our controller design, we simulated two scenarios in MATLAB R2024b Simulink using a Zed 2 stereo camera system [37] and an ABB IRB 4600 elbow robotic manipulator [33]. All simulations are conducted entirely in Simulink, with hardware-in-the-loop components replaced by their corresponding mathematical models. The specifications for the camera system and robot manipulator are summarized in the tables in the appendix. The camera system performs 2D feature estima  
Figure 12: Adaptive feedback loop. tion of three virtual points in space, with their coordinates in the inertial frame selected as: \([-0.5m\ 0\ 0]^{T}\), \([0\ 0\ 0.5m]^{T}\), \([2m,\ -2m,\ 0]^{T}\). Many camera noise removal algorithms have been proposed and shown to be effective in practical applications, such as spatial filters [38], wavelet filters [39], and the image averaging technique [40]. Among these denoising methods, there is always a tradeoff between computational efficiency and performance. For this paper, we assume that the images captured by the camera have been preprocessed using one of these methods, and the noise was almost perfectly attenuated. In other words, the only remaining disturbances in the system are due to unmodeled joint dynamics, such as compliance and flexibility, which are modeled as input disturbances in the controlled system. Two scenarios were simulated:  
* Scenario 1: Without input disturbances. * Scenario 2: With a \(1^{\circ}\) step input disturbance added to each joint of the robot arms for the entire simulation time. In both scenarios, the camera system starts from an initial pose in the inertial frame, denoted as \(Pose_{initial}^{O}\), and maneuvers target pose, denoted as \(Pose_{final}^{O}\). Table 1 summarizes the initial and final poses for each scenario, along with the corresponding joint configurations. The results are demonstrated in Figures 13 and 14 for scenario 1, and Figures 15 and 16 for scenario 2. Figure 13: Scenario one (no disturbances): Response of robot joint angles (**Left**: Feedback only responses, **Right**: Feedforward–feedback responses). Figure 14: _Cont_. Figure 14: Scenario one (no disturbances): Response of image coordinates (**Left**: Feedback only responses, **Right**: Feedforward–feedback responses). The three coordinates of the third point are only matched in the feedforward–feedback approach. Figure 15: Cont. Figure 16: _Cont._  
Figure 15: Scenario two (add disturbances): Response of robot joint angles (**Left**: Feedback only responses, **Right**: Feedforward–feedback responses). In cascaded control architectures, it is standard practice to design the inner loop to be at least 10 times faster than the outer loop to ensure proper time-scale separation and prevent interference. Accordingly, the outer-loop bandwidth is selected as one-tenth of the inner-loop bandwidth:  
\[\omega_{n}=10\,\text{rad}/\text{s} \tag{64}\]  
Figure 16: Scenario two (add disturbances): Response of image coordinates (**Left**: Feedback only responses, **Right**: Feedforward–feedback responses). The three coordinates of the third point are only matched in the feedforward–feedback approach. Additional parameters for the controller are either computed analytically or selected based on design guidelines. In the feedforward controller, the time constant \(\tau_{forward}\) is chosen to be one-tenth of the inner-loop time constant, as described in Equation (49):  
\[\tau_{forward}=0.1\tau_{in}=0.001\;\text{s} \tag{65}\]  
To ensure the outer-loop response is overdamped, and thus suppresses overshoot, the damping ratio \(\zeta\) is selected to be relatively large:  
Figure 13:0  
The response plots indicate that both the feedback-only controller and the combined feedforward-and-feedback controller successfully stabilize the system and reach a steady state within three seconds, even in the presence of small input disturbances (Scenario Two).