Skip to content

zaellis/OpenDT

Repository files navigation

OpenDT: Simple FSAE Electric Drivetrain Design Tool

Logo

Introduction

OpenDT is a graphical tool which can be used to experiment with different electric motor parameters and simple vehicle dynamics / aerodynamics parameters of RWD or AWD electric vehicles. This is tailored towards FSAE Electric but could theoretically be used for other applications.

The tool can run a mock acceleration event selecting the best gear ratio(s) for the fastest acceleration time to 75 meters. While this may be a good starting point for designing an electric drivetrain, the fastest accelerating car may not always have the best vehicle dynamics, efficiency, etc.

This tool can also run a simple sensitivity analysis for the vehicle model to changes in total mass, total grip (mu parameters), CG position, and aerodynamic characteristics.

This tool is inspired by the following video by Dr. Kevin Hayward and is something I wish I had when I was participating in FSAE design in my undergrad.

Installation

  1. Clone the Github or download a zip from the releases page
    1b. Unzip if downloading from releases
  2. Install dependencies in requirements.txt (Requires Python 3.10 or later) You may want to use a virtual environment but it's not necessary
  3. Run python3 openDT.py

Usage

1. Start graphical program by running python3 openDT.py

Home Tab

2. Input motor paremeters in motor tab

Motor Tab
Optionally, the AWD checkbox can be checked and a specification for front motors and overall power limit can be given. If only rear motors are used then the power limit is assumed to be >= PMax. If using hub motors or more than one motor for front/rear then the combined motor parameters must be entered for the front/rear axle for proper simulation. This simulation is effectively a solid axle vehicle with individual torques on each axle.

3. Input vehicle parameters in car tab

Car Tab Optionally, the slip checkbox can be checked to perform an acceleration run while slipping. In this case it is assumed the driver is applying maximum torque at all times

4. Press Apply

Home Tab After Apply is pressed the motor torque vs. RPM curve(s) will be plotted in the motor tab and variables will be applied for future simulations

5. Simulate

Sim Tab Input gear ratio range to be searched for an optimal accel time. A pop up will appear listing out the outcome of the simulation and then a graph of acceleration, power draw, and distance traveled will be shown

6. Sensitivity Analysis

Sens Tab Input a sensitivity range to see how acceleration time varies for a +/- percent change in select variables. This can be used to help target design changes that have the greatest impact on performance

Load / Save configs

loadsave design configurations can be loaded or saved to .dtconfig files. Two examples, example.dtconfig and exampleawd.dtconfig are included to show the functionality of the tool

Assumptions

  1. Lift and drag applied through center of gravity
  2. No suspension modelled
  3. Friction coefficients not affected by tire loading
  4. Vehicle behaves as if it has 2 solid axles
  5. When operating without slip, motor torque is the lesser of max possible motor torque at the given RPM and torque required to maximize tire grip
  6. When operating with slip, if max motor torque at given RPM exceeds grip, tires will slip and the maximum grip from slipping is applied to the tires. If the motor torque is less than slipping torque at any point the tires stop slipping and maximum grip is restored
  7. Efficiency of motor / drivetrain not taken into account. Assumes 100% efficiency

Contribution

If you would like to contribute, please fork this repository and then make pull requests with you changes. Any issues or mistakes in the existing code can be addressed through issues. Feature requests are welcome but are not guaranteed to be fixed.

License

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see https://www.gnu.org/licenses/.

About

Simple FSAE Electric Drivetrain Design Tool

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages