## 3 Drone System
### Sensor Module Integration  
The custom sensor module was designed and mounted on the top center of the drone using a 3D-printed holder. Eight ToF distance sensors were arranged at 45-degree intervals around the module, providing 360-degree horizontal obstacle detection. Each sensor is capable of multi-zone distance measurement (up to 64 zones in 8 \(\times\) 8 mode) within a 45 \(\times\) 45-degree field of view. The sensors were mounted approximately 130 mm above the drone frame to minimize obstruction from the propellers and to provide a clear horizontal field of view for each sensor. This mounting position was determined experimentally to achieve optimal sensing coverage without interference from the drone's structure. Once the module was fully assembled and wired, the drone was equipped for flight testing. The final drone system with the integrated sensor module is shown in Figure 10.  
\begin{table}
\begin{tabular}{c c} \hline \hline
**Feature** & **Detail** \\ \hline Frame type & X-type carbon fiber frame \\ Wheelbase & 500 mm diagonal motor-to-motor \\ Frame weight & \(\sim\)610 g \\ Propeller size & 10 \(\times\) 4.5 inch (plastic) \\ Motors & 4 \(\times\) 2216/880 KV brushless motors \\ ESC & 4 \(\times\) 20A ESC (BLHeli-S firmware, DShot capable) \\ Flight controller & Pixhawk 6C with PX4 open-source firmware \\ Power distribution board & Integrated (Holybro PM06 V2.1) \\ Battery recommendation & 4S LiPo (14.8 V), typically 3000–5000 mAh \\ Payload capacity & Up to 1 kg (recommended for stable flight) \\ \hline \hline \end{tabular}
\end{table}
Table 2: PX4 development Kit-X500 v2 drone specifications [31].  
Figure 9: Drone frame kit used for system development and experimentation.  
The sensors communicate with a microcontroller using the I2C protocol. To avoid address conflicts on the I2C bus [29], the microcontroller sequentially powers each sensor and reads data one at a time using GPIO-based address switching. This approach allows the microcontroller to manage all eight sensors using a shared communication bus. The microcontroller continuously collects environmental data and processes it in real time. When an obstacle is detected, the collision avoidance algorithm modifies the remote operator's control signals accordingly. The microcontroller overrides manual commands only when necessary to prevent collisions, thereby maintaining smooth and safe flight behavior. Figure 11 shows the overall system configuration, where the microcontroller is positioned between the distance sensors and the flight controller. Instead of direct integration with the flight controller [32], the microcontroller modifies the user's control signals from the receiver (Rx) based on obstacle proximity and transmits the adjusted commands. The computer unit is used solely during the development and testing phase when the drone is stationary for evaluating obstacle detection and collision avoidance functionality. It is not involved during actual flight operations.  
Figure 11: Block diagram of the proposed system configuration and its integration with the drone for real-time collision avoidance.  
Figure 10: Experimental drone system (drone equipped with developed sensor module system); (**a**) front view; (**b**) side view.