# A Cyber-Physical System for Wildfire Detection and Firefighting
## 3 Materials and Methods
### Architecture
Additionally, it is equipped with Lidar technology, enabling a collision avoidance mechanism to navigate around obstacles and avoid collisions. Table 2 provides the Capability Matrix defined in [39] and represents a summary of the UGV's technical details, encompassing its microcontroller, processors, sensors, actuators, mobility, and communication. These specifications ensure the UGV's safe operation during autonomous missions. **Unmanned Aerial Vehicle (UAV):** This is an ROS-based UAV designed specifically for wildfire detection and fire extinguishing. Equipped with a fireball-extinguishing payload, this UAV is capable of quickly and efficiently extinguishing fires before they can cause significant damage. The UAV fireball extinguisher is released automatically when the fire is detected, thanks to a YOLOv5 algorithm wrapped in an ROS package and starter as an additional ROS node. This allows the UAV to quickly search for fires by following a navigation path and responding immediately, without any need for human intervention. To ensure safe operation and autonomous mission, the UAV is also equipped with three front-facing RealSense depth cameras, one on the left, one on the right, and one in the center, which provide 3D depth information to enable the collision avoidance mechanism. This ensures that the UAV can navigate around obstacles and avoid collisions, even in challenging environments. Additionally, a bottom Realsense camera is used in the UAV model, and this camera allows the UAV to accurately detect fires in forests or uneven terra \begin{table}
\begin{tabular}{c c c c c} \hline \hline \multirow{2}{*}{**Robot Name**} & **Microcontroller/Processors/OS** & **Sensors/Actuators** & **Mobility** & **Communication** \\ \hline \multirow{4}{*}{_Jackal_} & Raspberry Pi 3 Model & IMU, Wheel Encoders, & & \\  & with CPU 1.2 GHz & GPS, Lidar UTM-30 LX, & & \\  & Quad Core, 1 GB RAM, & Intel RealSense & & \\  & ROS Noetic & D435 camera & & \\ \hline \hline \end{tabular}
\end{table} 
Table 2: UGV Technical Details. Capability Matrix defined in [39] and represents computational capabilities required by Unmanned Aerial Vehicles (UAVs) to support Ubuntu 20.04 with ROS Noetic, the algorithms for communication between the central unit and the onboard PX4 Autopilot, but they also represent the minimal capabilities necessary to enable flight control and real-time image recognition performed by the onboard sensor and the YOLOv5 model running onboard the UAV. **Ground Control Station:** This is a system made up of three dashboards that allow real-time monitoring of the forest, UAV onboard status, and telemetry, as well as the UGV. This system uses the Node-RED framework to create an ROS-based communication bridge between various autonomous systems, enabling efficient and fast transmission and reception of information. Furthermore, the ground control station acts as a RabbitMQ broker, meaning it can receive data streams from the wildfire detection system through the MQTT protocol. This allows for a comprehensive overview of the forest conditions and enables prompt action in case of emergencies. In addition, the ground control station uses third-party software such as QGroundControl, which is a user interface for PX4. QGroundControl can configure and operate various types of vehicles, including copters, airplanes, rovers, boats, and submarines, as well as different types of firmware such as PX4. This makes the ground control station a highly versatile system suitable for multiple applications. **Notification System Node:** This is a system that generates notifications if a fire is detected. It is based on a serverless function and provides a simple and efficient solution for promptly notifying the competent authorities in case of an emergency. Furthermore, the notification node uses an instant messaging service and a chatbot to forward information about the location or area where the fire has been detected.