Interactive engineering simulator for analysing the performance of direct-drive BLDC hub motors used in electric vehicles.
🚀 Try the live application here:
ev-motor-performance-simulator
The EV Hub Motor Performance Simulator is an interactive engineering application that estimates the operating characteristics of direct-drive BLDC hub motors commonly used in electric bicycles, scooters, and lightweight electric motorcycles.
The simulator models motor performance using representative datasheet parameters instead of simplified KV-based calculations, producing more realistic estimates of torque, power, efficiency and vehicle performance.
Designed using Python, Streamlit, and Plotly, the application provides an intuitive dashboard for analysing different hub motor configurations while visualising their characteristic performance curves.
- Interactive engineering dashboard
- Multiple EV hub motor presets
- Custom motor parameter editing
- Datasheet-based motor modelling
- Motor power-speed characteristic
- Motor torque-speed characteristic
- Electrical and mechanical power calculations
- Overall drivetrain efficiency estimation
- Vehicle dynamics analysis
- Tractive force estimation
- Aerodynamic top speed estimation
- Automatic battery configuration based on motor preset
- Responsive Streamlit interface
- Interactive Plotly visualisations
| Power-Speed Characteristic | Torque-Speed Characteristic |
|---|---|
![]() |
![]() |
The simulator estimates vehicle performance using representative hub motor specifications, including
- Rated Voltage
- Rated Current
- Rated Power
- Rated Speed
- Maximum Speed
- Rated Torque
- Peak Torque
- Wheel Diameter
- Vehicle Mass
- Controller Efficiency
- Motor Efficiency
The application further estimates
- Electrical Power
- Mechanical Power
- Overall Efficiency
- Wheel Speed
- Theoretical No-Load Speed
- Tractive Force
- Rolling Resistance
- Aerodynamic Drag
- Net Tractive Force
- Aerodynamic-Limited Top Speed
- Power-to-Weight Ratio
| Preset | Application |
|---|---|
| 250 W E-bike | Urban commuting |
| 750 W E-bike | Performance / Cargo bicycle |
| 1.5 kW Scooter | Urban electric scooter |
| 3 kW Motorcycle | Lightweight electric motorcycle |
| Custom | User-defined configuration |
Clone the repository
git clone https://github.com/yourusername/EV-Hub-Motor-Performance-Simulator.git
cd EV-Hub-Motor-Performance-SimulatorInstall dependencies
pip install -r requirements.txtRun the application
streamlit run app.py- Select a motor preset.
- Enable Custom Editing if required.
- Modify motor or vehicle parameters.
- Observe the updated engineering metrics.
- Analyse the generated performance curves.
EV-Hub-Motor-Performance-Simulator
│
├── assets/
│ ├── banner.png
│ ├── dashboard.png
│ ├── motorcycle_dashboard.png
│ ├── performance_summary.png
│ ├── power_speed_curve.png
│ └── torque_speed_curve.png
│
├── src/
│ ├── core/
│ ├── data/
│ ├── models/
│ ├── visualization/
│ └── utils/
│
├── app.py
├── requirements.txt
├── README.md
└── LICENSE




