========
AutoFLpy
.. image:: https://img.shields.io/pypi/v/autoflpy.svg
:target: https://pypi.python.org/pypi/autoflpy
.. image:: https://img.shields.io/travis/AdrianWeishaeupl/autoflpy.svg
:target: https://travis-ci.org/AdrianWeishaeupl/autoflpy
.. image:: https://readthedocs.org/projects/autoflpy/badge/?version=latest
:target: https://autoflpy.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
AutoFLpy (Automated Flight Log python) is an open source code to allow you to create agile flight reports. This code rapidly creates flight reports for the user given an input file in a matter of minutes and is ideal for a complete analysis and evaluation of flight data. Multiple input data sources are accepted, with the report combining these into a succinct and overseeable document.
.. image:: images/Flow_chart_simple.png
:width: 500
:align: center
:alt: Flow chart summarising AutoFLpy operation.
.. image:: images/Report_image.png
:width: 700
:align: center
:alt: Image of a sample generated flight report.
Features
- Generates a highly customisable and agile flight summary report using data from .log and input files.
- Default flight summary includes:
- Plots for (Note 1):
- GPS altitude and velocity.
- GPS latitude and longitude plotted on a map Note 2.
- Control inputs throughout the flight.
- Barometric data throughout the flight.
- Flight attitude throughout the flight.
- Flight computer vibrational data.
- Additional csv and
Arduino <https://www.arduino.cc/>
_ data.
- METAR information of the nearest airfield.
- Multi-flight simultaneous analysis for comparing different flights.
- Sample data files included. This will be created when the code is run for the first time.
- Full choice of file paths for the data and outputs can be specified using the input file.
Note 1 - If the raw data has been recorded and supplied.
Note 2 - For this feature to work, both geopandas <https://geopandas.org/>
_ and contextily <https://github.com/darribas/contextily>
_ need to be installed on the local machine. This needs to be done by the user due to difficulty installing these on various operating systems. A short help guide is attached in the installation instructions.
.. image:: images/SITL_flight_map.png
:width: 700
:align: center
:alt: Image of a flight plotted over a map using AutoFLpy.
Disclaimer
The examples provided should not be taken to mean that that flights have actually taken place in the areas shown, nor that anyone may have permission to conduct such flights. This software is offered in the hope that it may be useful to users conducting safe and legal drone operations, but the authors offer no guarantees and accept no legal responsibilities in relation to its use. Please ensure that you are aware of and obey all relevant laws, rules and regulations in your jurisdiction (UK users should follow the Drone Code <https://dronesafe.uk/drone-code/>
_).
Credits
This package was created with Cookiecutter_ and the audreyr/cookiecutter-pypackage
_ project template.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _audreyr/cookiecutter-pypackage
: https://github.com/audreyr/cookiecutter-pypackage
Runways.csv adapted from https://github.com/sobester/ADRpy
=======
History
1.1.13 (2022-05-02)
- Lincense date updated to 2022.
1.1.12 (2022-05-02)
- Fixed issue where code blocks were not being hidden in the final report.
- Updated the Data_sources.txt to include IMU and BAT2 by default.
1.1.11 (2021-11-01)
- Fixed a bug in the map plotting caused by contextily updating.
- Added documentation to the take_off_graph function.
- Template generalised for RCIN and RCOU sources.
1.1.10 (2020-10-22)
- multiaxis_graph_plotter title generation bug fixed
- Checklist feature removed and is no longer supported
- arduino_flight_data folder renamed to csv_flight_data NOTE: This will require a new folder structure to be created or it will cause errors by searching for the old folder names
1.1.9 (2020-05-20)
- Options added in log_analysis.autoflpy for including METAR data and running log_to_xlsx to generate xlsx files of the data
- Runway and weather data is now written as a table tor ease of viewing
1.1.8 (2020-05-07)
- Documentation updated to include examples of the backplt_map function
- Improvements made to the backplt_map function for isolated use
1.1.7 (2020-04-30)
- multiaxis_graph_plotter bug where the data was plotted on the wrong axis fixed
- backplt_map improved so that the z_var data always corresponds to the correct gps data (linked via time)
- flight_numbers can now be decimals for recording sub-flight numbers
1.1.6 (2020-04-24)
- backplt_map in plotting.py now returns a figure object for further customisation
1.1.5 (2020-04-17)
- backplt_map in plotting.py upgraded for stand alone use
1.1.4 (2020-03-23)
- Documentation updated
- Unit tests updated
1.1.3 (2020-03-10)
1.1.2 (2020-03-10)
- Multi-flight comparison functionality added
1.1.1 (2020-02-19)
- Custom runway data functionality added
1.1.0 (2020-02-19)
- Code modularised
- Unit tests updated
1.0.18 (2020-01-31)
1.0.17 (2020-01-31)
- Automatic take-off detection based on GPS altitude data added
- Requirements updated
1.0.16 (2020-01-28)
- Custom weather data functionality added
- Conditional colouring functionality added to the map plot
- Functionality to add time markers across all plots simultaneously
1.0.15 (2020-01-23)
1.0.14 (2020-01-22)
- Documentation updated
- Addition of a function to mark the arm and disarm points in the flight
- Addition of a function to add custom graph titles to the generated figures
- Preliminary take-off plotting function added. This can onlt be accessed manually
- Added the possibility to export the generated flight log from Jupyter to html without any code showing
- Repaired the checklist function
1.0.13 (2020-01-14)
- Added the ability to change the map line colour through a separate variable
- Previous demonstration data replaced with SITL generated data
1.0.12 (2020-01-13)
- Map formatting improved
- Documentation updated with images and examples
1.0.11 (2020-01-09)
- Improved code formatting
- Added improved map backplotting for greater speed
1.0.10 (2020-01-07)
- Removed warnings in the jupyter notebook
- Improved the map backplotting function
- Renamed graph_function to graph_plotter
1.0.9 (2020-01-06)
- Repaired map backplotting functions
- Added scale factor to map
1.0.8 (2019-12-12)
- Upgraded from .xls to .xlsx
1.0.7 (2019-12-11)
1.0.6 (2019-12-11)
- Fixed minor issues
- Added better map package installation instructions
1.0.5 (2019-12-10)
- Added data compression for faster notebook running
1.0.4 (2019-12-05)
- Added backplotted map for latitude and longitude data
1.0.3 (2019-11-28)
- Compatibility extended to Python 3.5 and 3.8
- Improved the default template and plotting functions
1.0.2 (2019-11-26)
- Compatibility for multiple operating systems improved
1.0.1 (2019-11-26)
1.0.0 (2019-11-25)
- AutoFLpy v 1.0.0 released
0.2.6 (2019-11-25)
- Updated Default Template with GPS and autopilot data
- Imporved unit testing
0.2.5 (2019-11-14)
- Checklist issues resolved
- Unittests expanded
0.2.4 (2019-11-14)
0.2.3 (2019-11-12)
- Changed autoflpy.py to log_analysis.py
0.2.2 (2019-11-12)
- Default storage directory bug fixed
0.2.1 (2019-11-12)
- Generated the input file into the generated folder structure
- Added example data for first time running
0.2.0 (2019-11-08)
- Fixed path issues in template
0.1.4 (2019-11-08)
- Fixed more directory issues
0.1.3 (2019-11-08)
0.1.2 (2019-11-08)
- Reformatted directory and added default user files.
0.1.1 (2019-11-07)
- Updates and added code. Reformatted directory.
0.1.0 (2019-10-29)