Planning long-distance trips with electric vehicles is fundamentally different from traditional route planning.
Unlike internal combustion vehicles, EV travel depends on multiple interacting factors:
- limited and dynamic driving range
- non-linear charging behavior
- charger availability constraints
- trade-offs between charging time and number of stops
Most simple calculators ignore these aspects and assume ideal conditions, leading to unrealistic results.
The goal of VoltRoute is to model EV travel as a simulation problem, where charging decisions, battery state, and trip progression are evaluated step-by-step to produce more realistic outcomes.
- Range estimation from battery + consumption
- Charging stop calculation
- Charging time simulation
- Configurable target charge level (e.g. 60% / 80%)
- Trip cost estimation
-
Smart charging logic
- avoids unnecessary charging stops
- only stops when required
-
Charger interval simulation
- user-defined average distance between chargers
- approximates real-world infrastructure
-
Trip timeline
- structured sequence: start → drive → charge → arrival
-
SOC graph
- battery percentage tracked across the full trip
-
Segment-based simulation
- trip is divided into realistic driving + charging segments
Charging speed is SOC-dependent:
| SOC range | Effective power |
|---|---|
| 0–20% | 85% |
| 20–60% | 100% |
| 60–80% | 65% |
| 80%+ | 30% |
Charging is simulated incrementally to approximate real behavior.
For each segment, the system determines:
- whether a charging stop is required
- how much energy should be added
- whether skipping a charger is optimal
This prevents:
- unnecessary micro-charging stops
- inefficient 100% charging
- unrealistic travel assumptions
The system tracks battery level:
- at trip start
- after each driving segment
- after each charging event
This enables:
- accurate arrival SOC estimation
- graphical SOC visualization
- Battery capacity (kWh)
- Consumption (kWh / 100 km)
- Trip distance (km)
- Charging power (kW)
- Initial SOC (%)
- Target SOC (%)
- Electricity price
- Average charger interval (km)
- Charging stops
- Total charging time
- SOC graph
- Trip timeline
- Trip cost
- Arrival SOC
- F#
- WebSharper UI
- Reactive UI (Var / View)
- Functional domain logic
- .NET 10 SDK
- Node.js
- npm
git clone https://github.com/szrich83/voltroute.git
cd voltroutedotnet restore
npm installdotnet build -c Releasedotnet runThen open the URL shown in the terminal (e.g. http://localhost:56910)
VoltRoute/
├── src/
│ ├── Client.fs # UI logic (WebSharper SPA)
│ ├── Calculations.fs # EV trip calculation engine
│ ├── VehiclePresets.fs # Predefined EV models
│ ├── TripAnalysis.fs # Extended analysis / future features
├── wwwroot/
│ ├── custom.css # Styling (dark UI + dashboard)
├── index.html # Entry point
Note: The live demo may take a few seconds to start if the Render instance is inactive.
https://voltroute.onrender.com
Richárd Szőke GNMH44 Software Engineering Student


