This is a tool for modeling the electrical and kinematic properties of an FRC robot. It aims to make predictions about how a robot's electrical system would respond to loads, in particular motors, and predict the effects of those loads.
This tool uses data from motors.vex.com.
Depending on your os, you may have to install these yourself.
- Python 3.4+
- Pip (Note: should come with Python)
- Venv (Note: should also come with Python)
- pandas
- motors.vex.com (Note: no need to download by hand)
- Install the dependencies listed above, e.g.
make dependencies
- Create a virtual environment
python3 -m venv ./env # Keeps your packages separate
- Activate the virtual environment
source env/bin/activate
- Install python dependencies
pip3 install --upgrade pip; pip3 install -r requirements.txt
- Download motor curve data from vex
cd vex_data/ ./download_curves.py
Until a proper package is created, this can be run manually. First, activate
the venv with source env/bin/activate
. Then ./*.py
to run a module.
Write good code. Before uploading, run make prep
if you are on linux to
prepare and run tests. Note: This will auto-format your files, so you probably
want to run this before you commit.
If pylint complains about misspelled words that are not misspelled, run
make add_words_to_pylint
and the words that pylint is complaining about will
be added to the dictionary. Make sure you add the modified
.pylint_spelling_dict file to your commit, or you will not pass circleci.
run make prep
to run tests locally.
Find a bug? Algorithm doesn't work? Make an issue on github, and we will try to fix it.