This repository provides accessory files to help process and visualize log file data generated by the ACSL-flightstack-winged.
The parent folder contains the scripts to help with the groundstation functionality. To make them executable, run the following for each of the scripts:
sudo chmod +x <script-name>.shTo run the scripts use
./<script-name>.sh-
ssh-drone.sh
Helps ssh into the drone for tests.NOTE:
Change the username, password, and IP to match your companion computer. -
send-weather.sh
Runs the Python script that is used to send the weather data from your local WeatherSTEM station.NOTE:
weatherAPP/config.yamlhas the configuration file. You will need to generate your own API key and input the correct URL for your weather station.- You might also need to modify the
udp_ipaccording to the companion computer's IP that you set up. - You can leave the rest to default, as it was found to work best with our testing.
-
get-logs.sh
Gets the logs from the drone and stores them inflight_log/....NOTE:
- Change the
REMOTE_DIRto the correct flight log path on the Odroid. REMOTE_USERandREMOTE_HOSTneed to match your companion computer's setup as well.
- Change the
-
createWorkspace.m
This script imports log files and creates a workspace in the MATLAB environment for processing. It serves as the entry point for working with flight data logs.
This folder contains all the functions that are used by createWorkspace.m to process the data for the controllers
-
process_pid_log.mA sample script that provides an example of processing PID controller-related log data and storing them in the MATLAB workspace, using the input variables increateWorkspace.m. -
process_mrac_pid_log.mA sample script that provides an example of processing MRAC PID controller-related log data and storing them in the MATLAB workspace, using the input variables increateWorkspace.m. -
process_pid_omega_log.mA sample script that provides an example of processing PID OMEGA controller-related log data and storing them in the MATLAB workspace, using the input variables increateWorkspace.m.
This folder contains the MATLAB files used to plot the processed data. To use any of the plotter files, use the navigation bar on the left side of the screen in MATLAB. Navigate to and select the flight_log\<platform>\<YYYY_MM_DD>\<flightrun>\<controller>_log_<flightrun>.mat file. Once the .mat file is loaded, run the function in the plotter files to plot the data.
IMPORTANT: Each plotter is controller specific and needs to match the contoller name in the
.matfile.
-
plot_data_PID.mA sample script that provides an example of plotting PID controller-related log data stored in theflight_log/directory, created using thecreateWorkspace.mscript andprocess_pid_log.mscript. -
plot_data_MRAC_PID.mA sample script that provides an example of plotting MRAC PID controller-related log data stored in theflight_log/directory, created using thecreateWorkspace.mscript andprocess_mrac_pid_log.mscript. -
plot_data_PID_OMEGA.mA sample script that provides an example of plotting PID OMEGA controller-related log data stored in theflight_log/directory, created using thecreateWorkspace.mscript andprocess_pid_omega_log.mscript.
This folder contains example log files from flight tests.
-
flight_log/qrbp/2024_07_23/flight_run_13_58_09/ contains flight data collected using the MRAC PID control algorithm with MOCAP fusion.
-
flight_log/qrbp/2024_07_25/flight_run_21_08_05/ contains flight data collected using the PID OMEGA control algorithm with MOCAP fusion.
-
flight_log/qrbp/2024_10_16/flight_run_17_54_17/ contains flight data collected using the PID OMEGA control algorithm with VIO fusion and MOCAP logging.
This folder contains the CAD files for the design of the Quad-Rotor Biplane (QRBP).