## 3 Experimental Flight and System Identification
### Data Acquisition for System Identification via Experimental Flight  
Initially, the KUBeetle was manually kept in a hovering condition with minimum drift via a remote control. In hovering condition, the preprogrammed command in the control board was triggered through the remote control to automatically apply reference commands to the KUBeetle. Preprogrammed command was used to ensure the repeatability and consistency during each experimental flight. The reference command is a very important component of the system identification because it affects entire aspects of the system identification process. The reference command should be able to excite as many dynamic modes of interest and natural dynamics as possible to provide comprehensive data for system identification [77; 78; 79; 80]. With the dynamic of the KUBeetle in consideration, two different reference commands were used in the experimental flight. The first reference command was in the form of a regular square signal with a relatively long and constant period (amplitude: \(\pm 17^{\circ}\) (0.3 rad); period: 6 s) to analyze transient and steady state responses of the KUBeetle (Supplementary Materials Video S1). The second reference command consisted of an irregular square signal with varying periods (amplitude: \(\pm 17^{\circ}\) (0.3 rad); period: 0.2 to 1.4 s) to cover the frequency bandwidth of interest (Supplementary Materials Video S2). The second reference command was generated using a pseudo-random binary signal, which was a periodic and deterministic signal with properties such as white noise [79]. The amplitude and period of the reference command were chosen considering the operating range of the KUBeetle. Assuming the same amplitude and frequency range, the square signal covered a similar range to that of a chirp signal, as indicated by the frequency spectrum of reference commands shown in Figure 4:  
For clarity, the extended dynamic model with parameters obtained from CFD and force and moment measurements, later used as the initial dynamic model in system identification, is called the CFD dynamic model. Figure 5 shows experimental and simulation results of the KUBeetle with a regular square command for pitch. Together with the preprogrammed command, the constant trim control input from the remote control was applied to the KUBeetle. The constant trim command was subtracted to obtain the refer  
Figure 3: Experimental flight setup for data acquisition. ence command from the actual command input applied. Small noises were added while the trim control input was being read from the pulse-width-modulated signal. The reference command was the summation of the preprogrammed command and the added trim command noise. Figure 5a shows that the closed-loop KUBeetle has a relatively slow response, high overshoot, and large steady state error. After the reference command was provided, the KUBeetle attempted to follow the reference command in the beginning by responding quickly according to the stroke plane change via the servo motor. However, it was gradually stabilized to a low pitching angle, which maintained the large steady state error. This phenomenon was mainly caused by the position of the CG that affected the force and the moment generated by the gravity force during flight. The CG was located at a relatively large distance below the aerodynamic center (AC). Figure 5b presents the pitch rate responses to a regular square reference command, showing that the measured pitch rate still had a large periodic and high-frequency noise due to wing flapping. Figure 6 demonstrates experimental and simulation results of the KUBeetle with an irregular square reference command. Figure 6a shows the pitch angle responses. In some intervals, the pitch angle response misleadingly looks as if it is following the command signal well, although some phase delays exist. This is due to overshooting responses at the beginning of step inputs. However, as the frequency of the reference command increased, it could not follow the reference command.