Skip to content

byu-crop-biomechanics-lab/FIELDAQ

Repository files navigation

FIELDAQ

Overview and Resources

The software for the FIELDAQ is written in python, using the kivy library. Versioning is managed using git via GitHub. The layout and functionality are based on the old DARLING software. With the addition of a touchscreen, kivy was utilized over pygame.

Running the Software

After installing python and the nessesary libraries, the software is run by navigating into the FIELDAQ/Granusoft/src directory and running the main.py file.

The main.py file imports the necessary kivy library elements, and builds the kivy app. The companion main.kv file imports the widgets (GUI screen elements), created for the use across the GUI, and imports the views that will be displayed throughout the app. These views are each composed of a python file and kivy file. More detail can be found in Documentation/Kivy Screen Management.docx.

The software is designed to be run on the RaspberryPi, but can also be run on any computer with python3 and kivy. This approach is useful for development and testing purposes. The code is structured to use false sensor input data when the sensor connections can not be properly detected.

Documentation Directory

The Documentation directory contains many useful files, some of which have been mentioned previously. Documentation that has been found to be the most useful is listed here:

Additionaly, a brief overview of all the documentation is provide here:

Structural Information of the Code Base (how is it assembled)

  • Directory Tree.txt - Overview of the directories in the repository. With information about the contents of each directory.
  • FIELDAQ_Software_Diagrams.pdf - Information about the screen navigation for the GUI and how each screen is built using kivy elements/widgets (flowchart is outdated).
  • Software Flowchart and Logic.docx - Supplementary to FIELDAQ_Software_Diagrams, this document contains more information about the purpose of each screen.
  • Software Documentation Outdated.pdf - An old resource containing the Classes and Methods contained in every file. This was last updated at the end of capstone, and may contain some useful information still. An updated version can be compiled using DoxyGen (version. 1.8.15).

Background Information (how do the pieces work)

Examples

Plans for Future Changes and Improvements

  • There are a few GitHub branches of the repository in various states of progress. Their subjects of feature improvements include:
    • Implementing a bar code scanner for naming test files.
    • Adjusting the camera settings
    • Fixing an issue with the image review screens where some images may not appear.
    • Creating a new keyboard layout with a minus sign to be used for text entry in the calibration screens.
  • A future redesign of the PCB would be convenient for adjusting port placement on the physical board.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages